You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
; $.fn.enter2tab = function (fn_done) { this.keydown(function (e) { // get key pressed (charCode from Mozilla/Firefox and Opera / keyCode in IE)
var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0; var tmp = null; var maxTabIndex = 9999; // get tabindex from which element keypressed
//var nTabIndex = (parseInt($(this).attr('indexRow'), 10) || 0) + 1;
var objCurrElement = this; var objCurrElementCollect = $('[indexRow]').not(':disabled'); var nTabIndex = []; objCurrElementCollect.each(function (idx) { if (this === objCurrElement) { nTabIndex = $(objCurrElementCollect[idx + 1]) return false; } }); debugger; var myNode = this.nodeName.toLowerCase(); if (((key === 13 && !e.ctrlKey) || key === 9) && ((myNode == "textarea") || (myNode == "input") || (myNode == "select") || (myNode == "a") || (myNode == "button"))) { for (var x = 0; x < 3; x++) { //tmp = $("a[indexRow='" + nTabIndex + "'],textarea[indexRow='" + nTabIndex + "'],select[indexRow='" + nTabIndex + "'],input[indexRow='" + nTabIndex + "'],button[indexRow='" + nTabIndex + "']").get(0);
tmp = nTabIndex; debugger if (nTabIndex.length > 0) { $(tmp).focus(); return false; //break;
} else { //如果要循環的話,就解開以下的封印
//var first = $("a[tabIndex='0'],textarea[tabIndex='0'],select[tabIndex='0'],input[tabIndex='0']").get(0);
//$(first).focus();
this.blur(function () { //alert('cc');
});
if (typeof fn_done === 'function') fn_done(); //當tab或enter到最後一個欄位時的處理方法
return false; } } return false; } else if (key == 13) { //return false;
} }) return this; }
|