3

我需要使用 javascript 限制退格键的四个输入值。但我不知道如何将四个输入值存储在单个变量中。我的代码如下,

jQuery(function ($) {
         var input = $('#test1');
         input.on('keydown', function () {
             var key = event.keyCode || event.charCode;

             if (key == 8)
                 return false;
         }); // $('#test1'), $('#test2'), $('#test3'), $('#test4') my four text input
     });
4

3 回答 3

2

您可以添加多个选择器,

var $inputs = $('#test1, #test2, #test3, ...');

于 2012-12-20T05:18:44.657 回答
1

您可以为所有四个输入重复代码,或者创建一个函数,您可以将输入传递给并为每个输入调用它,或者将公共类应用于相关输入并传递类选择器而不是 ID。

我个人会这样做:

function disallowBackspace(input) {
    var elem = document.getElementById(input),
        evt = function(e) {
            e = e || window.event;
            if( (e.keyCode || e.which) == 8) {
                if( e.preventDefault) e.preventDefault();
                return false;
            }
            return true;
        };
    if( elem.addEventListener) elem.addEventListener('keydown',evt);
    else elem.attachEvent('onkeydown',evt);
}
disallowBackspace("test1");
disallowBackspace("test2");
disallowBackspace("test3");
disallowBackspace("test4");

没有 jQuery FTW!

于 2012-12-20T05:20:34.690 回答
0

另一种解决方案是为所有输入字段添加一个特殊的类no-backspace,然后将其用作选择器

$('.no-backspace').on('keydown', function () { .... }
于 2012-12-20T05:21:04.033 回答