我希望禁用alt代码和字符(Ê,Œ)放入文本输入。尝试使用alphanum库以及只是禁用alt键仍然无法阻止字符。
想法//建议?
答案 0 :(得分:0)
您可以尝试使用此类https://jsfiddle.net/mykisscool/VpNMA/
$('#phone-number', '#example-form')
.keydown(function (e) {
var key = e.charCode || e.keyCode || 0;
$phone = $(this);
// Auto-format- do not expose the mask as the user begins to type
if (key !== 8 && key !== 9) {
if ($phone.val().length === 4) {
$phone.val($phone.val() + ')');
}
if ($phone.val().length === 5) {
$phone.val($phone.val() + ' ');
}
if ($phone.val().length === 9) {
$phone.val($phone.val() + '-');
}
}
// Allow numeric (and tab, backspace, delete) keys only
return (key == 8 ||
key == 9 ||
key == 46 ||
(key >= 48 && key <= 57) ||
(key >= 96 && key <= 105));
})
.bind('focus click', function () {
$phone = $(this);
if ($phone.val().length === 0) {
$phone.val('(');
}
else {
var val = $phone.val();
$phone.val('').val(val); // Ensure cursor remains at the end
}
})
.blur(function () {
$phone = $(this);
if ($phone.val() === '(') {
$phone.val('');
}
});
您需要指定要限制的alt代码的键值。可以在http://www.alt-codes.net/
找到它们此解决方案需要jQuery。
答案 1 :(得分:0)
在提交时为文本输入添加正则表达式验证器。
在此使用:(http://www.w3schools.com/jsref/jsref_obj_regexp.asp)
产生的影响: [a-zA-z0-9 \ @。\#]&lt; - 表示以下范围内的任何内容: 小写字母a-z,大写字母A-Z,数字0-9,以及文字at,句点,空格和#标签符号。您可以创建一个:
if(formValue!= regExp){//不允许提交,或运行任何功能或有什么功能}