1.下拉框綁定失去焦點事件並設置焦點的方法:
$("#ID").next().children().blur(function () {
var ID= $("#ID").val();
if (ID== "") {
ShowInfoBox("資料不允許為空,請輸入!");
$("#ID").next().children().focus();
return false;
}
});
2.下拉框Tab鍵觸發事件指定下一焦點的位置:
2.1 方法一:
$("#ID").next().children().keydown(function () {
var oEvent = window.event;
if (oEvent.keyCode == '9') {
oEvent.keyCode = 0;
oEvent.returnValue = false;
//alert("你按下了Tab鍵");
var ID= $("#ID").val();
if (ID == "" || ID == null || ID == undefined) {
ShowInfoBox("資料不允許為空,請輸入!");
$("#ID").next().children().focus();
return false;
}
}
});
注意:Easy UI 的下拉框比較特殊,我發現這種編碼方式在一個頁面中使用多個選項卡的情況下,只在第一個選項卡中這個方法有效果,后面的選項卡沒有效果(還未找到原因,知道原因的朋友,望評論區告知,謝謝),所以后來我采取了下面的這種方法
2.2 方法二:
document.onkeydown = function (e) {
var currKey = 0, e = e || event;
currKey = e.keyCode || e.which || e.charCode
if (currKey == 9) {
var focus_id = document.activeElement.id; // _easyui_textbox_input23
var comId = focus_id;
if (focus_id.indexOf("easyui_textbox_input") != -1) {
comId = $($('#' + focus_id).parent().parent().find('input')[0]).attr('id');
}
if (comId == "AE_CRNCY_CODE") {
var CRNCY_CODE = $("#AE_CRNCY_CODE").val();
if (CRNCY_CODE == "" || CRNCY_CODE == null || CRNCY_CODE == undefined) {
ShowInfoBox("資料不允許為空,請輸入!", 1, "AE_CRNCY_CODE_focus");
//$("#AE_CRNCY_CODE").next().children().focus();
return false;
}
}
}
}
