我有一个表和rowSelected,我希望当用户聚焦在第4个td时,第6个td得到焦点而不是td 5。
var rowindex=$("#mycustomizedtable).attr('rowselected);
var row=$("#mycustomizedtable tbody).find('tr')[rowindex];
var tds=$(row).find('td');
var colselected=$("#mycustomizedtable).attr('colselected');
console.log(colselected);

例如:我得到了结果' 4'在控制台
现在,我希望6td得到关注。
我写这个,但我没有正确的答案。
if(colselected==4)
{
$(row).find('td').eq(6).focus();
}

怎么做?
答案 0 :(得分:2)
您可以参考以下代码获取帮助。在这里,我们将focusout
侦听器添加到了input
元素中的所有<table>
元素。我们检查第4个单元格focusout
是否发生了input
。如果它从那里发生,那么我们就不得不把注意力集中在第6个单元格的input
框中。希望它能指导您实现目标。
$(document).ready(function(){
$("#mycustomizedtable td input").focusout(function(){
var currentElem = $(this);
var currentIndex = currentElem.closest("td").index();
if(currentIndex == 3)
currentElem.closest("tr").find(":nth-child(6)").find("input").focus();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<table id="mycustomizedtable">
<thead>
<th>First</th>
<th>Second</th>
<th>Third</th>
<th>Fourth</th>
<th>Fifth</th>
<th>Sixth</th>
<th>Seventh</th>
</thead>
<tbody>
<tr>
<td><input type="text"/></td>
<td><input type="text"/></td>
<td><input type="text"/></td>
<td><input type="text"/></td>
<td><input type="text" value="5th value"/></td>
<td><input type="text"/></td>
<td><input type="text"/></td>
</tr>
<tr>
<td><input type="text"/></td>
<td><input type="text"/></td>
<td><input type="text"/></td>
<td><input type="text"/></td>
<td><input type="text" value="5th value"/></td>
<td><input type="text"/></td>
<td><input type="text"/></td>
</tr>
</tbody>
</table>