【问题标题】:HTML Input replace previous textHTML 输入替换之前的文本
【发布时间】:2018-10-07 20:47:14
【问题描述】:

我正在尝试将其设置为输入,maxlength 为 1 时,当您再次键入时,它会替换当前值。示例:1,然后输入 2 变为 2。

这是我用来将文本保留为数字的代码 (jQuery)

    $(document).ready(function() {
$("#txtboxToFilter").keydown(function (e) {
    // Allow: backspace, delete, tab, escape, enter and .
    if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 ||
         // Allow: Ctrl+A, Command+A
        (e.keyCode === 65 && (e.ctrlKey === true || e.metaKey === true)) || 
         // Allow: home, end, left, right, down, up
        (e.keyCode >= 35 && e.keyCode <= 40)) {
             // let it happen, don't do anything
             return;
    }
    // Ensure that it is a number and stop the keypress
    if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
        e.preventDefault();
    }
});
});

【问题讨论】:

  • 这里有什么问题?

标签: jquery html input replace overwrite


【解决方案1】:

可以如下在第二个if条件中添加else条件

$(document).ready(function() {
$("#txtboxToFilter").keydown(function (e) {
  
    // Allow: backspace, delete, tab, escape, enter and .
    if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 ||
         // Allow: Ctrl+A, Command+A
        (e.keyCode === 65 && (e.ctrlKey === true || e.metaKey === true)) || 
         // Allow: home, end, left, right, down, up
        (e.keyCode >= 35 && e.keyCode <= 40)) {
         
             // let it happen, don't do anything           
             return;
    }
    // Ensure that it is a number and stop the keypress
    if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
      
        e.preventDefault();
    }
    else
    {
       $("#txtboxToFilter").val('');
    }
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="txtboxToFilter" maxlength="1">

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-26
    • 1970-01-01
    • 2012-03-05
    • 1970-01-01
    • 1970-01-01
    • 2010-12-10
    • 2012-05-21
    • 1970-01-01
    相关资源
    最近更新 更多