js 禁用只读文本框获得焦点时的退格键 |
本文标签:js,只读文本框,退格键 有时候难免会要用到只读的文本框,可今天发现只读文本框有一个缺陷,当鼠标焦点在文本框里面的时候按回退键(backSpace), 会退回到前一个页面,这个问题就有点烦恼了,用户又不清楚可不可以输入,他如果看到文本框想去改里面的东西,按一下,有可能前面所有填写的数据就会丢失.故此写了个方法,供大伙有需要时放入<script></script>,保管你称心如意 。 复制代码 代码如下: document.documentElement.onkeydown = function(evt){ var b = !!evt, oEvent = evt || window.event; if (oEvent.keyCode == 8) { var node = b ? oEvent.target : oEvent.srcElement; var reg = /^(input|textarea)$/i, regType = /^(text|textarea)$/i; if (!reg.test(node.nodeName) || !regType.test(node.type) || node.readOnly || node.disabled) { if (b) { oEvent.stopPropagation(); } else { oEvent.cancelBubble = true; oEvent.keyCode = 0; oEvent.returnValue = false; } } } } |