首页 > 解决方案 > 空格后的数字不会在 jquery 中发送

问题描述

我正在尝试为我正在开发的游戏制作银行系统。问题在于空格,我已经尝试过 $.trim(); 没有任何成功。

这是我的 Jquery 代码:

$(document).ready(function(){
    $("#money_in").click(function(){
        $("#error").empty(); // empty error div
        $("#success").empty(); // empty success div
        
        var money = $('#number_bank').val(); // get value from input field
        
        $.post("app/banken/banken_sett_inn.php",
            {
            money: money
            },
            function(output, res, status){
                if (~output.indexOf("ikke")){ // if output contains 'ikke'
                    $('<span>' + output + '</span>').appendTo('#error');// add text to error feedback
                    $("#error").show(); // show error feedback
                } else {
                    var money_in_bank = parseInt(<?php echo AS_session_row($_SESSION['ID'], 'AS_bankmoney', $pdo) ?>) + parseInt(money);
                    var money_on_hand = parseInt(<?php echo AS_session_row($_SESSION['ID'], 'AS_money', $pdo) ?>) - parseInt(money);
                    
                    $('<span>' + output + '</span>').appendTo('#success'); // add text to success feedback
                    $("#success").show(); // show success feedback
                    $('#saldo').text(numberWithSpaces(money_in_bank) + ' kr'); // Edit numbers for bank
                    $('#saldo_top').text(numberWithSpaces(money_in_bank) + ' kr'); // Edit numbers for top container
                    $('#saldo_left').text(numberWithSpaces(money_on_hand) + ' kr'); // Edit numbers for left container
                    
                    $("#number_bank").val(''); // Empty input field
                }
            }
        );
    });
});

这是我的PHP代码

<?php

ob_start();
include_once '../../includes/dbh.php';
include_once '../../auth.php';
include_once '../../functions/functions.php';

$money = remove_space($_POST['money']);

if(isset($money)){
    $number = $money;
    if(number_valid($number) && $number <= AS_session_row($_SESSION['ID'], 'AS_money', $pdo)){
        echo "Du satt inn ".number($number)." kr i banken";
    } else {
        echo "Du kan ikke sette mer penger i banken enn du har på hånden";
    }
}

?>

我的问题是当我输入10 000我的数字字段时,它只会添加10示例#saldo,即使它应该添加10 000

我已经尝试过删除空格var money$.trim();但它仍然无法正常工作。它确实以正确的数量编辑了我的数据库。如果我有10 000我的银行,我10 000把它存入20 000我的数据库,但网站上的反馈只说10 010

提前致谢!

标签: javascriptphpjquery

解决方案


$. trim()从指定字符串的开头和结尾删除空格的函数。字符串中的空格位于中间。所以它会起作用。

尝试使用替换

money.replace(/\s/g, '')

推荐阅读