2010-01-12 73 views
2

下面的代码仅适用于字母数字和空格。但是,我想也允许重音字符(Ã)。正则表达式应该如何修改?使用javascript和正则表达式验证HTML文本框

感谢

<html> 
<head> 
<script type='text/javascript' src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/JavaScript"> 
$(function() { 
    $("#sub").bind("click", 
    function() { 
    $('#addText').val($('#addText').val().replace(new RegExp("[^a-zA-Z0-9 ]","g"), '')); 
    }); 
}); 
</script> 
</head><body> 
<div>Enter Text:</div> 
<input id="addText" type=text/> 
<input id="sub" type="button" value="Submit" /> 
</body></html> 

回答

2

如果你只关心的Latin-1(西欧)的信件,这应该工作:

[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\xff] 

对于其他脚本(如:希腊文,西里尔文,泰信, CJK字符等),事情变得更加复杂,只是禁止诸如控制字符之类的事情变得更安全,而不是试图追踪哪些字符是“字母”。