Javascript jQuery-如何限制文本框的输入值

Javascript jQuery-如何限制文本框的输入值,javascript,jquery,jquery-ui,jquery-plugins,Javascript,Jquery,Jquery Ui,Jquery Plugins,我想限制文本框中的输入在任何情况下为“Y”或“N”。 如何在jQuery中实现这一点。我非常确定,如果keydown返回false,则不允许输入。您可以通过从事件对象获取密钥代码来实现这一点。不过,这并不妨碍将值复制/粘贴到文本框中。因此,如果要限制用户的输入,更好的选择是选择或单选按钮 $("#some-selector").bind("keydown", function (e) { return e.keyCode == 89 || e.keyCode == 78 }); 我很确定,

我想限制文本框中的输入在任何情况下为“Y”或“N”。
如何在jQuery中实现这一点。

我非常确定,如果keydown返回false,则不允许输入。您可以通过从事件对象获取密钥代码来实现这一点。不过,这并不妨碍将值复制/粘贴到文本框中。因此,如果要限制用户的输入,更好的选择是选择或单选按钮

$("#some-selector").bind("keydown", function (e) {
  return e.keyCode == 89 || e.keyCode == 78
});

我很确定,如果keydown返回false,那么输入是不允许的。您可以通过从事件对象获取密钥代码来实现这一点。不过,这并不妨碍将值复制/粘贴到文本框中。因此,如果要限制用户的输入,更好的选择是选择或单选按钮

$("#some-selector").bind("keydown", function (e) {
  return e.keyCode == 89 || e.keyCode == 78
});

正如您所说,这并不考虑复制/粘贴的情况,更好的选择是附加一个更改事件处理程序,然后检查它是否是一个allowed char else标志错误

$("some-selector").change( function () {
    var textBoxVal=$(this).val();
    if(textBoxVal!=='y' || textBoxVal!=='n')
        alert("Error");                   
});

注意:alerts jsut示例-向文本框添加不同的样式,或者在您的页面上处理错误。

正如您所说,这不考虑复制/粘贴的情况。更好的替代方法是附加更改事件处理程序,然后检查其是否为允许的字符else标记错误

$("some-selector").change( function () {
    var textBoxVal=$(this).val();
    if(textBoxVal!=='y' || textBoxVal!=='n')
        alert("Error");                   
});

注意:提醒jsut示例-在文本框中添加不同的样式,或者在页面上处理错误。

您可能也希望将其限制为一个字符,至少这是我在OP中解释的+1@DrStrangeLove:事实上,jQuery建议您使用event.which,因为它规范化了keyCode/charCode属性:如果您想要获得实际的字符而不是代码,那么可以使用String.fromCharCode e.keyCode;你也可以把它限制为一个字符,至少这是我在OP中解释的+1@DrStrangeLove:事实上,jQuery建议您使用event.which,因为它规范化了keyCode/charCode属性:如果您想获取实际字符而不是代码,可以使用String.fromCharCode e.keyCode;出于好奇,为什么不使用一个复选框?出于好奇,为什么不使用一个复选框?