我有一个输入文本字段,其中应用了一些验证。用户无法在字段中输入数字和特殊字符。一切都很好但我想在两个词之间留出空间。怎么做。
这是代码......
<input type="text" id="text1" onKeyPress="return IsAlpha(event);"/>
var specialKeys = new Array();
specialKeys.push(8); //Backspace
specialKeys.push(9); //Tab
specialKeys.push(32); //Tab
specialKeys.push(46); //Delete
specialKeys.push(36); //Home
specialKeys.push(35); //End
specialKeys.push(37); //Left
specialKeys.push(39); //Right
function IsAlphaNumeric(e) {
var keyCode = e.keyCode == 0 ? e.charCode : e.keyCode;
var ret = ((keyCode >= 65 && keyCode <= 90) || (keyCode >= 97 && keyCode <= 122) || (specialKeys.indexOf(e.keyCode) != -1 && e.charCode != e.keyCode));
document.getElementById("error").style.display = ret ? "none" : "inline";
return ret;
}
答案 0 :(得分:0)
在Jquery中,您可以使用正则表达式执行此操作:
$('.test').keyup(function() {
var $th = $(this);
$th.val( $th.val().replace(/[^0-9' ]+( [0-9' ]+)*$/g, function(str)
{
return '';
}
));
});
答案 1 :(得分:0)
使用正则表达式模式的最佳方式
var patternforchar=/^[a-zA-Z\s]+$/;
$("#text1").bind('keyup',function(){
if(patternforchar.test($(this).val())){
alert("highlight your error");
return "false";//do form submit error
}else{ return "true"}
});