我有一個表單,我能夠通過serializeArray()
獲取所有表單元素。 我想要focus()
基於它們的tabindex值使用回車鍵的表單元素。只有在它有價值或者專注於自己的時候。Tabindex基於輸入鍵通過獲取表單elemens不工作在jquery
小新的jQuery,所以如果任何錯誤......
$.fn.entertab = function()
{
var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
var maxTabIndex = 20;
var elements = this.serializeArray();
$.each(elements, function(i, element)
{
this.keypress(function(e){
var nTabIndex=this.tabIndex;
var myNode=this.nodeName.toLowerCase();
if(nTabIndex > 0 && key == 13 && nTabIndex <= maxTabIndex && ((!myNode.attr("disabled")) || (myNode.val == "")))
{
myNode.focus();
}
else
{
nTabIndex=this.tabIndex+1;
myNode.focus();
}
});
});
}
$("theform").entertab();
您能否提供您正在使用的HTML?直到一些建議:移動var key ...在this.keypress函數中,使用onload/ready狀態來啓動entertab():$(function(){/ * here code//});並且你使用的是「theform」,那不是標籤名稱,如果它是一個類名,那麼使用$(「。theform」)。entertab(); – 2011-01-08 11:36:30