在.net程序系统中有时需要对文本框的输入做一些限定,比如禁用粘贴功能。
一般对文本框禁用快捷键Ctrl+C的粘贴功能以及右键的粘贴功能可试用JS代码实现。
可参考:
function click(e) { if (document.all) { if (event.button==1||event.button==2||event.button==3) { oncontextmenu='return false'; } } if (document.layers) { if (e.which == 3) { oncontextmenu='return false'; } } } if (document.layers) { document.captureEvents(Event.MOUSEDOWN); } document.onmousedown=click; document.oncontextmenu = new Function("return false;") var trxdyel=true var hotkey=17 /* hotkey即为热键的键值,是ASII码,这里99代表c键 */ if (document.layers) document.captureEvents(Event.KEYDOWN) function gogo(e) { if (document.layers) { if (e.which==hotkey && trxdyel) { alert('操作错误.或许是您按错键了!'); } } else if (document.all) { if (event.keyCode==hotkey&&trxdyel){ alert('操作错误.或许是您按错键了!'); }} } document.onkeydown=gogo
将以上JS代码写到JS文件中取名为xp.js并放入Script文件夹中,引用时需要注意设置Charset=“gb2312”,不然提示出的信息会是乱码。页面引用:
<script src="../Script/xp.js" type="text/javascript" charset="gb2312"></script>
实际上禁用文本框的粘贴功能系统提供了一个完美的解决方案。试用onpaste属性,让其返回假即可禁用此文本框的粘贴功能。
代码为:onpaste="return false;"
示例:input
<input onpaste="return false;" type="text" name="textfield" >
或者TextBox
<asp:TextBox ID="name" runat="server" onpaste="return false;" ></asp:TextBox>
如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛