| 发表于:2007-04-27 15:59:5321楼 得分:0 |
<html> <head> <script> function txb_onkeypress() { var srcelem = event.srcelement; var osel = document.selection.createrange().duplicate(); var epsn = osel.text.length; var srcrange = srcelem.createtextrange(); osel.setendpoint( 'endtostart ', srcrange); var bpsn = osel.text.length; epsn += bpsn; var num = osel.text + string.fromcharcode(event.keycode) + srcrange.text.substr(epsn); event.returnvalue = validate(srcelem,num); } function txb_onpaste() { var srcelem = event.srcelement; var osel = document.selection.createrange().duplicate(); var epsn = osel.text.length; var srcrange = srcelem.createtextrange(); osel.setendpoint( 'endtostart ', srcrange); var bpsn = osel.text.length; epsn += bpsn; var num = osel.text + window.clipboarddata.getdata( "text ") + srcrange.text.substr(epsn); event.returnvalue = validate(srcelem,num); } function txb_onblur() { var srcelem = event.srcelement; if(!validate(srcelem,srcelem.value)) { srcelem.value = document.getelementsbyname( 'htext ')[0].value; } } function txb_onfocus() { var srcelem = event.srcelement; document.getelementsbyname( 'htext ')[0].value = srcelem.value; } function validate(control,num) { var reg; var reg1; var reg2; obj1 = document.getelementsbyname( 'checkmode ')[0]; obj2 = document.getelementsbyname( 'ctext ')[0]; if (control.attributes.getnameditem( 'validatamode ').value == 1 ¦ ¦ (control.attributes.getnameditem( 'validatamode ').value == 2 && document.getelementsbyname( 'ctext ')[0].value == 0)) { reg=/^[1-9]\d*$/; return reg.test(num); } else if (control.attributes.getnameditem( 'validatamode ').value == 2) { if(obj1.checked) { eval( 'reg=/^[1-9]\\d*[.]?\\d{0, ' + obj2.value + '}$/; '); reg1=/^0{1}$/; eval( 'reg2=/^0{1}[.]{1}\\d{0, ' + obj2.value + '}$/; '); } else { reg=/^[1-9]\d*[.]?\d*$/; reg1=/^0{1}$/; reg2=/^0{1}[.]{1}\d*$/; } return reg.test(num) ¦ ¦ reg1.test(num) ¦ ¦ reg2.test(num); } else if(control.attributes.getnameditem( 'validatamode ').value == 3) { reg=/^[1-9]\d*$/; reg1=/^0{1}$/; return reg.test(num) ¦ ¦ reg1.test(num); } } function validatamode_onclick(val) { var nameditem = document.createattribute( 'validatamode '); nameditem.value = val; document.getelementsbyname( 'btext ')[0].attributes.setnameditem(nameditem); if(!validate(document.getelementsbyname( 'btext ')[0], document.getelementsbyname( 'btext ')[0].value)) { document.getelementsbyname( 'btext ')[0].value = ' '; } } function setbutton_onclick(control) { var srcrange = control.createtextrange(); srcrange.movestart( 'character ',math.min(document.bform.atext.value,control.createtextrange().text.length)); srcrange.collapse(); srcrange.select(); control.focus(); ta_onselect(); } function setall_onclick(control) { var srcrange = control.createtextrange(); srcrange.movestart( 'character ', 0); srcrange.moveend( 'character ', control.createtextrange().text.length); srcrange.select(); control.focus(); ta_onselect(); } function reset_onclick(control) { var srcrange = control.createtextrange(); srcrange.movestart( 'character ', control.createtextrange().text.length); srcrange.collapse(); srcrange.select(); control.focus(); ta_onselect(); } function getbutton_onclick(control) { if(control.createtextrange().text.length == 0) { document.bform.atext.value = 0; return; } var osel = control.currange; var epsn = osel.text.length; var sellen = epsn; var srcrange = control.createtextrange(); osel.setendpoint( 'endtostart ', srcrange); var bpsn = osel.text.length; epsn += bpsn; document.bform.cursorpsn[0].checked ? document.bform.atext.value = bpsn : document.bform.atext.value = epsn; osel.movestart( 'character ',bpsn); osel.moveend( 'character ',sellen); osel.collapse(document.bform.cursorpsn[0].checked); osel.select(); } function ta_onselect() { if(event.srcelement.createtextrange) //event.srcelement.currange = document.selection.createrange().duplicate(); event.srcelement.currange = document.selection.createrange(); } function calculator() {}; with (calculator) { prototype._prop = 0; prototype.setprop = function(p) {_prop = p}; prototype.getprop = function() {return _prop}; } function alert_onclick() { var tt = new calculator(); tt.setprop(3); alert(tt.getprop()); alert( '\ ' '); } function checkmode_on_click(control1,control2) { control2.readonly = !control1.checked; if(!validate(document.getelementsbyname( 'btext ')[0], document.getelementsbyname( 'btext ')[0].value)) { document.getelementsbyname( 'btext ')[0].value = ' '; } } </script> </head> <body> <form name= "aform "> <input type= "text " validatamode= "1 " name= "btext " size= "80 " onkeypress= "txb_onkeypress(); " onpaste= "txb_onpaste(); " onblur= "txb_onblur(); " onfocus= " txb_onfocus(); "> <br> <input type= "radio " name= "validatamode " checked onclick= "validatamode_onclick(1) "> 整数 <input type= "radio " name= "validatamode " onclick= "validatamode_onclick(2) "> 小数 <br> <input type= "checkbox " name= "checkmode " checked onclick= "checkmode_on_click(this,ctext) "> 小数位限制 <input type= "text " name= "ctext " value= "2 " size= "4 " maxlength= "2 " validatamode= "3 " onkeypress= "txb_onkeypress(); " onpaste= "txb_onpaste(); " onblur= "txb_onblur(); " onfocus= " txb_onfocus(); "> <input type= "hidden " name= "htext "> <br> <input type= "reset " value= "delete "> </form> <a href= "javascript:if(1==1 && comfirm(11)){alert(1);}else{alert(2);} "> 111 </a> <form name= "bform "> textarea: <br> <textarea name= "textar " rows= "5 " cols= "80 " onselect= "ta_onselect() " onclick= "ta_onselect(); " onkeyup= "ta_onselect(); "> 网友说我是一只动物,有灵性和血性却没有人性……为此我很悲哀,我换了无数个昵称后他们仍然可以从我的文章中看的出我就是那只没有人性的螃蟹。索性我放弃了努力,我只有我自己的名字纵横其间,一进那个社区你就会看社区top ten--第一个就是我,秦剑。 </textarea> <br> input: <br> <input type= "text " onselect= "ta_onselect() " onclick= "ta_onselect(); " onkeyup= "ta_onselect(); " name= "text_sigle " size= "80 " value= "网友说我是一只动物,有灵性和血性却没有人性……为此我很悲 "> <br> <input validatamode= "1 " type= "text " name= "atext " maxlength= "3 " onkeypress= "txb_onkeypress(); " onpaste= "txb_onpaste(); " id= "text1 "> <br> <input type= "radio " checked value= "true " name= "cursorpsn "> 前 <input type= "radio " value= "false " name= "cursorpsn "> 后 <br> <input id= "setpsn " type= "button " value= "设置光标位置 " id= "setbutton " name= "setbutton " onclick= "setbutton_onclick(document.bform.text_sigle) "> <input id= "getpsn " type= "button " value= "获取光标位置 " id= "getbutton " name= "getbutton " onclick= "getbutton_onclick(document.bform.text_sigle) "> <input id= "getpsn " type= "button " value= "全选 " id= "setallbutton " name= "setallbutton " onclick= "setall_onclick(document.bform.text_sigle) "> <input id= "getpsn " type= "button " value= "取消 " id= "resetbutton " name= "resetbutton " onclick= "reset_onclick(document.bform.text_sigle) "> <input type= "reset " value= "delete "> </form> <form name= "cform "> <input type= "button " onclick= "alert_onclick(); " value= "点我吧~! "> </form> <img src= "1.jpg "> </img> </body> </html> | | |
|