在keypress的时候判断如果不是正确的IP字符的话
加上window.event.keyCode = 0;
就不会输入了
加上window.event.keyCode = 0;
就不会输入了
解决方案 »
- javascript中encodeURI与decodeURI的问题
- 高手来看看这个问题
- jQuery Tab 如何自动切换啊?
- ================关于jquery.ui.autocomplete的问题===============
- 求助关于"实现图片自动变换的代码"问题??????
- 关于动态脚本的-如何修改一个script对象中的一个函数(难!)
- 正则表达式,验证时间.
- JavaScript里有没有将字符串两端的空格删除的函数?
- 这样的del触发什么事件?
- 如何给自己的js库写自动完成
- 设置leftmargin影响了onbeforeunload函数
- 200分征求注释:这是从news.sina.com.cn剪出来的一段代码!
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<link href="tab.css" rel="stylesheet" type="text/css"></head>
<script language="javascript">
function check1(ip,obj){
/^(?:1\d?\d?|2[0-5]?[0-5]?)(?:\.(?:1\d?\d?|2[0-5]?[0-5]?)?){0,3}$/.test(ip)?obj.val=ip:obj.value=obj.val||'';
}</script>
<body>
<FORM name="admin" method="post" action="xitongok.php"> <tr>
<td width="50%" height="24" align="left" >IP地址:</td>
<td width="50%" align="left" ><input name="ip" type="text" id="ip" value="" onkeyup="return check1(this.value,this)"/></td>
</tr><FORM>
</body>
</html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<link href="tab.css" rel="stylesheet" type="text/css"></head>
<script language="javascript">
function check1(n,obj){
var arr = n.split(".");
if(arr.length>4){
obj.value = n.substring(0,n.length-1);
}
for(var i=0;i<arr.length;i++){
var val = arr[i];
var re = /^([1-9]\d*|0)$/;
if(val!=""){
if(!re.test(val)){
obj.value = n.substring(0,n.length-1);
}else{
var k = new Number(val);
if(k>255||k<0){
obj.value = n.substring(0,n.length-1);
}
}
}
}
}</script>
<body>
<FORM name="admin" method="post" action="xitongok.php"> <tr>
<td width="50%" height="24" align="left" >IP地址:</td>
<td width="50%" align="left" ><input name="ip" type="text" id="ip" value="<?php echo $ip?>" onkeypress="check1(this.value,this)" <?php if ($dhcp=='1') echo "disabled = 'disabled'";?>/></td>
</tr><FORM>
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link href="tab.css" rel="stylesheet" type="text/css">
</head>
<script language="javascript">
function test(evt){
var e = window.event || evt;
var r = /^(([1-9]\d?|1\d{2}|2[0-4]\d|25[0-5]|0)\.){0,3}([1-9]\d?|1\d{2}|2[0-4]\d|25[0-5]|0)?$/;
if (!r.test(e.srcElement.value + String.fromCharCode(e.keyCode))) {
e.keyCode = 0;
e.returnValue = false;
}
}
</script>
<body>
<FORM name="admin" method="post" action="xitongok.php">
<table>
<tr>
<td width="50%" height="24" align="right">IP地址:</td>
<td width="50%" align="left">
<input name="ip" type="text" id="ip" value="" onkeypress="test(event);"/>
</td>
</tr>
</table>
</FORM>
</body>
</html>
用了一个很长的正则式,
其实,这么长的正则式不比程序实现更好。<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link href="tab.css" rel="stylesheet" type="text/css">
</head>
<script language="javascript">
function test(evt){
var e = window.event || evt;
var r = /^(([1-9]\d?|1[013-9]\d|12[0-689]|2[01]\d|22[0-3])(((\.([1-9]\d?|1\d{2}|2[0-4]\d|25[0-5]|0)?){0,2})|((\.([1-9]\d?|1\d{2}|2[0-4]\d|25[0-5]|0)){2}(\.([1-9]\d?|1\d{2}|2[0-4]\d|25[0-5])?)?)))$/;
if (!r.test(e.srcElement.value + String.fromCharCode(e.keyCode))) {
e.keyCode = 0;
e.returnValue = false;
}
}
</script>
<body>
<FORM name="admin" method="post" action="xitongok.php">
<table>
<tr>
<td width="50%" height="24" align="right">IP地址:</td>
<td width="50%" align="left">
<input name="ip" type="text" id="ip" value="" onkeypress="test(event);"/>
</td>
</tr>
</table>
</FORM>
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<link href="tab.css" rel="stylesheet" type="text/css">
</head>
<script language="javascript">
function test(evt){
var e = window.event || evt;
var r = /^(([1-9]\d?|1[013-9]\d|12[0-689]|2[01]\d|22[0-3])(((\.([1-9]\d?|1\d{2}|2[0-4]\d|25[0-5]|0)?){0,2})|((\.([1-9]\d?|1\d{2}|2[0-4]\d|25[0-5]|0)){2}(\.([1-9]\d?|1\d{2}|2[0-4]\d|25[0-5])?)?)))$/;
if (!r.test(e.srcElement.value + String.fromCharCode(e.keyCode))) {
e.keyCode = 0;
e.returnValue = false;
}
}
function test1(evt){
var e = window.event || evt;
if ((e.keyCode < 48 || e.keyCode > 57) && (e.keyCode != 190)
&& (e.keyCode != 8) && (e.keyCode != 37) && (e.keyCode != 38)
&& (e.keyCode != 39) && (e.keyCode != 40) && (e.keyCode != 46)) {
window.event.keyCode = 0;
window.event.returnValue = false;
}
}
</script>
<body>
<FORM name="admin" method="post" action="xitongok.php">
<table>
<tr>
<td width="50%" height="24" align="right">
IP地址:
</td>
<td width="50%" align="left">
<input name="ip" type="text" id="ip" value="" onkeypress="test(event);" onkeydown="(event);"/>
</td>
</tr>
</table>
</FORM>
</body>
</html>