读书人

禁用特殊字符的输入,该如何处理

发布时间: 2013-05-02 09:39:29 作者: rapoo

禁用特殊字符的输入


function showKeyPress(evt) {
evt = (evt) ? evt : window.event
return checkSpecificKey(evt.keyCode);
}
///
function checkSpecificKey(keyCode) {
var specialKey = "$%\:\;\~\,\,\//\\\\^*\'\"\+\|\?"; //Specific Key list
var realkey = String.fromCharCode(keyCode);
var flg = false;
flg = (specialKey.indexOf(realkey) >= 0);
if (flg) {
//alert('请勿输入特殊字符: ' + realkey);
return false;
}
return true;
}
document.onkeypress = showKeyPress;

///同一个页面中用户名需要对特殊字符进行控制,密码不需要,但是页面中写入以上js
///页面整体验证不通过。
<input type="text" name="userName" onkeypress =showKeyPress()/>
<input type="text" name="userpassword"/>




JavaScript 函数 用户体验
[解决办法]
还有就是
var realkey = String.fromCharCode(keyCode);

这里取出来的值是不对的,还是用正则匹配吧。
<script type="text/javascript">
function showKeyPress(evt,obj) {
evt = (evt) ? evt : window.event
return checkSpecificKey(evt.keyCode,obj);
}
///
function checkSpecificKey(keyCode,obj) {
var reg = /[\$\%\\\:\\\;\~\,\,\//\\\\^*\'\"\+\
[解决办法]
\?]/g; //Specific Key list
var val = obj.value;
var flg = reg.test(val);
if(flg){
val = val.replace(reg,'')
console.log(val)
obj.value = val;
}
}

</script>
///同一个页面中用户名需要对特殊字符进行控制,密码不需要,但是页面中写入以上js
///页面整体验证不通过。
<input type="text" name="userName" onkeyup ="return showKeyPress(event,this)"/>
<input type="text" name="userpassword"/>

读书人网 >ASP

热点推荐