今天涉及到一個(gè)問題,在jsp中的查詢條件中,有文本框可輸入篩選條件,也有下拉框選擇篩選條件。輸入框中內(nèi)容可按“Backspace”鍵進(jìn)行刪除,但是下拉框中需要屏蔽backspace功能,否則就回執(zhí)行頁(yè)面的回退功能。代碼如下
復(fù)制代碼 代碼如下:
td width="350px;">企業(yè)名稱:nbsp;
input type="text" name="filter_psName" id="psName" size="40"/>
/td>
td width="200px;">區(qū)域:nbsp;
select name="filter_regionCode" id="regionName" theme="simple" />
/td>
td>
s:radio onclick="query();" name="filter_status" theme="simple" >/s:radio>
/td>
td valign="middle" align="center">
img src="${ctx}/common/img/icons/icon403a3.gif" height="20" />查詢
/td>
在網(wǎng)上找了一段屏蔽退格鍵的代碼如下
復(fù)制代碼 代碼如下:
$(document).keydown(function (e) {
var doPrevent;
if (e.keyCode == 8) {
var d = e.srcElement || e.target;
if (d.tagName.toUpperCase() == 'SELECT') {
doPrevent = d.readOnly || d.disabled;
}
else
doPrevent = true;
}
else
doPrevent = false;
if (doPrevent)
e.preventDefault();
});
發(fā)現(xiàn)有如下問題:
下拉框d.tagName獲取的的標(biāo)簽名稱也是INPUT。故實(shí)現(xiàn)不了上述需求。
仔細(xì)研究了一下,下了如下代碼
復(fù)制代碼 代碼如下:
//屏蔽下拉框的退格鍵操作
$(document).keydown( function(e)
{
//獲取鍵盤的按鍵CODE
var k=e.keyCode;
//獲取操作的標(biāo)簽對(duì)象
var obj=e.target || e.srcElement;
//獲取對(duì)象的只讀屬性的值
var vReadOnly = obj.getAttribute('readonly');
//如果按鍵為“backspace”并且標(biāo)簽對(duì)象的只讀屬性不為空時(shí)return false(select 標(biāo)簽?zāi)J(rèn) readonly=“readonly”)
if(k==8 vReadOnly!=null){
return false;
}
});
實(shí)現(xiàn)了上述需求,應(yīng)該還有更好的辦法,希望朋友們看到能夠給予提示或者互相討論。
您可能感興趣的文章:- js實(shí)現(xiàn)模擬計(jì)算器退格鍵刪除文字效果的方法
- JS禁用瀏覽器退格鍵實(shí)現(xiàn)思路及代碼
- js屏蔽鼠標(biāo)鍵盤(右鍵/Ctrl+N/Shift+F10/F11/F5刷新/退格鍵)
- js 禁用只讀文本框獲得焦點(diǎn)時(shí)的退格鍵
- 屏蔽鼠標(biāo)右鍵、Ctrl+n、shift+F10、F5刷新、退格鍵 的javascript代碼
- js屏蔽退格鍵(backspace或者叫后退鍵與F5)