完全可用的WEB IP地址输入框

来源:互联网 发布:入侵centos教程 编辑:程序博客网 时间:2024/05/18 09:11

满3位数\ 按空格键\方向键\回车键 自动跳到下一个 '.' 后面。

输入必须是数字限制、0~255 范围限制、

根据需要可能添加

地址有效性检查、多播地址检查等。

<style>div.IPDiv{background:#ffffff;width:120;font-size:9pt;text-align:center;border:2 ridge threedshadow;border-right:inset threedhighlight;border-bottom:inset threedhighlight;}input.IPInput{width:24;font-size:9pt;text-align:center;border-width:0;}</style><script language=javascript> function getPos(obj) {   obj.focus();   var workRange=document.selection.createRange();   obj.select();   var allRange=document.selection.createRange();   workRange.setEndPoint("StartToStart",allRange);   var len=workRange.text.length;   workRange.collapse(false);   workRange.select();   return len; }     function setCursor(obj,num) {   range=obj.createTextRange();    range.collapse(true);    range.moveStart('character',num);    range.select(); }   function keyDownEvent(obj) {     code=event.keyCode;     if(!((code>=48&&code<=57)||(code>=96&&code<=105)||code==190||code==110||code==13||code==9||code==39||code==8||code==46||code==99||    code==37))         event.returnValue=false;     if(code==13)         event.keyCode=9;     if(code==110||code==190)         if(obj.value)             event.keyCode=9;         else             event.returnValue=false; }   function keyUpEvent(obj0,obj1,obj2) {     if (obj1.value > 255)     {         alert("填写范围必须在 0 - 255间");         obj1.value = obj1.value.substring(0, obj1.value.length - 1);         return;     }     code=event.keyCode          if(obj1.value.length>=3&&code!=37&&code!=39&&code!=16&&code!=9&&code!=13)         obj2.focus();          if(code == 32)         obj2.focus();       if(code == 8 && obj1.value.length == 0)     {         obj0.focus();         setCursor(obj0,obj0.value.length);     }       if (code == 37 && (getPos(obj1) == 0))     {         obj0.focus();         setCursor(obj0,obj0.value.length);     }     if (code == 39 && (getPos(obj1) == obj1.value.length))     {         obj2.focus();     } } function keyUpEventForIp4(obj0,obj) {     if (obj.value > 255)     {         alert("填写范围必须在 0 - 255间");         obj.value = obj.value.substring(0, obj.value.length - 1);         return;     }     if(code == 8 && obj.value.length == 0)     {         obj0.focus();         setCursor(obj0,obj0.value.length);     }     if (code == 37 && (getPos(obj) == 0))     {         obj0.focus();         setCursor(obj0,obj0.value.length);     }   } function getipvalue(obj1,obj2,obj3,obj4,obj) {     obj.value = obj1.value + "." + obj2.value + "." + obj3.value + "." + obj4.value;     alert(obj.value); } </script> <script language="JScript">var IPlikeInputStr=[];//for(var i=0;i<4;i++)IPlikeInputStr[i]="<input class=IPInput name=IPInput type=text size=3 maxlength=3 >"+(i==3?"":".");IPlikeInputStr[0]="<input class=IPInput name=ip1 type=text size=3 maxlength=3 onkeydown=keyDownEvent(this) onkeyup=keyUpEvent(ip1,ip1,ip2)>."IPlikeInputStr[1]="<input class=IPInput name=ip2 type=text size=3 maxlength=3 onkeydown=keyDownEvent(this) onkeyup=keyUpEvent(ip1,ip2,ip3)>."IPlikeInputStr[2]="<input class=IPInput name=ip3 type=text size=3 maxlength=3 onkeydown=keyDownEvent(this) onkeyup=keyUpEvent(ip2,ip3,ip4)>."IPlikeInputStr[3]="<input class=IPInput name=ip4 type=text size=3 maxlength=3 onkeydown=keyDownEvent(this) onkeyup=keyUpEventForIp4(ip3,ip4)>"document.write("<div class=IPDiv>"+IPlikeInputStr.join("")+"</div>");</script>