如何将自定义单元格集中在表格中?

时间:2016-06-02 06:05:27

标签: javascript jquery html

我有一个表和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();
  }    




怎么做?

1 个答案:

答案 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>