html文件代码如下:
复制代码 代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>JS控制非法字符的输入</title>
</head>
<body>
<form>
<p>这里不允许输入如下字符:(像!@#$%^&*等)<br>
<textarea rows="2" cols="20" name="comments" onkeypress="checkComments()"></textarea>
</p>
<p>这里不允许输入引号:<br>
<input type="text" name="txtEmail" onkeypress="checkEmail()"/>
</p>
<p>这里只能输入数字:<br>
<input type="text" name="txtPostalCode" onkeypress="checkPostalCode()"/>
</p>
<p>这里只能输入大写英文:<br>
<input type="text" name="txtEnglish" onkeypress="checkEnglish()"/>
</p>
</form>
</body>
</html>
js文件代码如下:
复制代码 代码如下:
<script type="text/javascript" language="JavaScript">
/*
* 特殊字符在ASCII码中所表示的范围为32~48,57~65,90~97
* event.returnValue=false;设置键盘输入主false,则不能在文本框中输入内容
*/
function checkComments(){
if (( event.keyCode > 32 && event.keyCode < 48) ||
( event.keyCode > 57 && event.keyCode < 65) ||
( event.keyCode > 90 && event.keyCode < 97)
) {
event.returnValue = false;
}
}
/*
* 引号的ASCII码为34和39
*/
function checkEmail(){
if ( event.keyCode == 34 || event.keyCode == 39 ) {
event.returnValue = false;
}
}
/*
* 数字的ASCII表示范围为 45~57
*/
function checkPostalCode() {
if( event.keyCode < 45 || event.keyCode >57 ) {
event.returnValue = false;
}
}
/*
* 大写英文字母ASCII表示范围为65~91
* 小写英文字母ASCII表示范围为97~123
*/
function checkEnglish() {
if( event.keyCode < 65 || event.keyCode > 91 ) {
event.returnValue = false;
}
}
</script>