我在输入文本上只有一个函数,它只接受字母,我如何修改它以允许空格,以便我可以在名字和姓氏之间留出空格
这是我的功能
Name : <input type="text" name="quantity" id="quantity" /> <span id="errmsg"></span>
$(document).ready(function () {
$("#quantity").keypress(function (e) {
if(e.which < 65 /* a */ || e.which > 122 /* z */ ) {
e.preventDefault();
}
});
});
答案 0 :(得分:1)
试试这个。 :
$(document).ready(function () {
$("#quantity").keypress(function (e) {
if((e.which < 65 || e.which > 90) && ( e.which < 97 || e.which >122) && e.which != 32 )) {
e.preventDefault();
}
});
});
答案 1 :(得分:0)
你还允许在那里使用一些非字母字符(例如94 == ^
)。只是字母&amp;位:
$(document).ready(function () {
$("#quantity").keypress(function (e) {
if ((e.which == 32) || /* space */
((e.which >= 65) && (e.which <= 90)) || /* A-Z */
((e.which >= 97) && (e.which <= 122)) /* a-z */
)
return;
e.preventDefault();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="quantity" id="quantity" /> <span id="errmsg"></span>
答案 2 :(得分:0)
添加:
e.keyCode == 0 || e.keyCode == 32
要成功:
Name : <input type="text" name="quantity" id="quantity" /> <span id="errmsg"></span>
$(document).ready(function () {
$("#quantity").keypress(function (e) {
if(e.which < 65 /* a */ || e.which > 122 /* z */ ||
e.keyCode != 0 || e.keyCode != 32) {
e.preventDefault();
}
});
});
这些密钥代码表示不同浏览器中的空格,应该按您想要的方式工作。
答案 3 :(得分:0)
你可以让你的功能允许像这样的小字母和大写字母和空格:
Name : <input type="text" name="quantity" id="quantity" /> <span id="errmsg"></span>
$(document).ready(function () {
$("#quantity").keypress(function (e) {
if(e.which < 65 /* a */ || e.which > 122 /* z */ || e.keycode != 32 /* space */) {
e.preventDefault();
}
});
});