Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 我的输入字段在四位数后自动清除_Html - Fatal编程技术网

Html 我的输入字段在四位数后自动清除

Html 我的输入字段在四位数后自动清除,html,Html,我正在尝试将整数转换为印度货币,并将它们返回到相同的输入标记,但在输入第五位之后,它可以很好地处理四位数字,再次从第五位开始。请帮帮我。我是新来的 function currency(element) { let ele = document.getElementById(element.id); let num = ele.value let number = (parseInt(num))||0;

我正在尝试将整数转换为印度货币,并将它们返回到相同的输入标记,但在输入第五位之后,它可以很好地处理四位数字,再次从第五位开始。请帮帮我。我是新来的

function currency(element) {
            let ele = document.getElementById(element.id);
            let num = ele.value
            let number = (parseInt(num))||0;
            console.log(number.toLocaleString('en-IN'));
            var int = number.toLocaleString('en-IN');
            document.getElementById(element.id).value = int.toString();
        }
它为
1234

但是,当我输入
12345
时,它会在您键入
1234
后将
1
返回到输入标记,您的函数会将
的值更改为
1234
。但当您键入
5
时,函数会尝试从
12345
中读取一个整数。逗号不是以10为基数的有效数字,因此
parseInt
1
()处停止解析。在将
的值传递给
parseInt
之前,需要对其进行清理:

let num = ele.value.replace(/[^\d]/g, ''); // remove all non-digits from num
let number = (parseInt(num))||0;

仅从您展示的代码来看,问题并不明显<代码>parseInt('12345')。toLocaleString('en-IN')给出12345。