js 禁用只讀文本框獲得焦點時的退格鍵
更新時間:2010年04月25日 01:31:01 作者:
發(fā)現(xiàn)只讀文本框有一個缺陷,當鼠標焦點在文本框里面的時候按回退鍵(backSpace), 會退回到前一個頁面
有時候難免會要用到只讀的文本框,可今天發(fā)現(xiàn)只讀文本框有一個缺陷,當鼠標焦點在文本框里面的時候按回退鍵(backSpace), 會退回到前一個頁面,這個問題就有點煩惱了,用戶又不清楚可不可以輸入,他如果看到文本框想去改里面的東西,按一下,有可能前面所有填寫的數(shù)據(jù)就會丟失.故此寫了個方法,供大伙有需要時放入<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;
}
}
}
}
復制代碼 代碼如下:
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;
}
}
}
}
相關(guān)文章
JavaScript進制數(shù)之間的互相轉(zhuǎn)換
這篇文章主要介紹了JavaScript進制數(shù)之間的互相轉(zhuǎn)換,進制轉(zhuǎn)換是人們利用符號來計數(shù)的方法,下文基于JavaScript實現(xiàn)進制數(shù)之間的轉(zhuǎn)換,有一定的知識性參考價值,需要的小伙伴可以參考一下2022-05-05JavaScript數(shù)據(jù)結(jié)構(gòu)與算法之檢索算法示例【二分查找法、計算重復次數(shù)】
這篇文章主要介紹了JavaScript數(shù)據(jù)結(jié)構(gòu)與算法之檢索算法,結(jié)合實例形式分析了二分查找法、計算重復次數(shù)相關(guān)算法原理與使用技巧,需要的朋友可以參考下2019-02-02JavaScript中各種時間轉(zhuǎn)換問題詳解(YYYY-MM-DD、時間戳、中國標準時間)
在某些場景下,需要將時間轉(zhuǎn)換為字符串進行展示或傳遞,下面這篇文章主要給大家介紹了關(guān)于JavaScript中各種時間轉(zhuǎn)換問題(YYYY-MM-DD、時間戳、中國標準時間)的相關(guān)資料,需要的朋友可以參考下2024-02-02