0

我目前正在使用 2textboxes个相互复制的值。但问题是,我的第一个文本框有一个自动逗号。我怎样才能让我的第二个文本框忽略逗号?

例如。我的第一个文本框值是 1,000然后我的第二个文本框值应该是 1000

HTML

<input type="text" value="" id="textbox1"/>
<input type="text" value="" id="textbox2"/>

脚本

//this function is for my autocomma
function updateTextView(_obj){
    var num = getNumber(_obj.val());
        if(num==0){
            _obj.val('');
        }else{
            _obj.val(num.toLocaleString());
        }
    }   
    function getNumber(_str){
        var arr = _str.split('');
        var out = new Array();
        for(var cnt=0;cnt<arr.length;cnt++){
            if(isNaN(arr[cnt])==false){
                out.push(arr[cnt]);
            }
       }
       return Number(out.join(''));
    }
    $(document).ready(function(){
        $('#textbox1').on('keyup',function(){
            updateTextView($(this));
        });
    });

//this function copies the textbox1 values to textbox value 2
    $("#textbox1").bind('input', function () {
        var stt = $(this).val();
        $("#textbox2").val(stt);
    });
4

2 回答 2

1

您修改功能updateTextView如下:

function updateTextView(_obj) {
   var num = getNumber(_obj.val());
   if (num == 0) {
     _obj.val('');
     $("#textbox2").val('');
   } else {
     $("#textbox2").val(num);
     _obj.val(num.toLocaleString());
   }
}

然后删除以下内容:

$("#textbox1").bind('input', function () {
   var stt = $(this).val();
   $("#textbox2").val(stt);
});
于 2021-05-07T06:03:31.540 回答
1

在普通的 JS 中:

尝试onkeyup()添加到第一个文本框中的事件。然后使用 . 将第一个框的值中的所有逗号替换为空value.replace(/,/g, "")。然后复制第一个输入的值

function update(input) {
  var value = input.value.replace(/,/g, "");
  document.getElementById("second-textbox").value = value;
}
<input onkeyup="(update(this))" />
<input id="second-textbox" />

到第二个。

于 2021-05-07T06:05:23.357 回答