基本上,我希望JS检测数字并实时编辑“文本”块上的所有输入。

如果用户输入1000,则脚本应自动对其进行解析并将其格式设置为1.000。有什么具体方法可以做到吗?

最佳答案

基本上,您想在输入元素上使用onchange()事件并设置输入字符串的格式。

<script type="text/javascript">
    function addDecimalPoints(id) {
        var inputElement = document.getElementById(id);
        inputElement.value=inputElement.value.replace(/\D/g, '');
        var inputValue = inputElement.value.replace('.', '').split("").reverse().join(""); // reverse
        var newValue = '';
        for (var i = 0; i < inputValue.length; i++) {
            if (i % 3 == 0) {
                newValue += '.';
            }
            newValue += inputValue[i];
        }
        inputElement.value = newValue.split("").reverse().join("");
    }
</script>

09-25 21:23