如何在div中找到一个表的td,以便在另一个嵌套div中的复选框中设置td中的文本?

时间:2014-07-30 10:37:23

标签: javascript jquery

我在桌子上有一个td。有来自数据库的多行数据,每行都有唯一的ID。当我点击td时,会打开一个包含多个复选框的对话框。当我选择checkboxex的这些值并点击提交时,这些将在没有页面刷新的td中显示。我想要做的是找到td并在提交时将文本设置为它。但是我的页面包含很多功能,里面有很多div,通过查找父子等很难找到它的位置。有没有办法让我可以直接找到具有唯一行ID的td。以下是我的代码:

<div></div>
<div class="content">
  <div class="autoval">
    <div>
      <div>
     </div>
     <div>
         <div>
         <table>
            <tr id="123unique">
                <td></td><td></td><td "to set text"></td><td></td>
            </tr>
            <tr id="768unique">
                <td></td><td></td><td></td><td></td>
            </tr>
         </table>
         </div>
     </div>
  </div>
</div>
</div>
<div></div>
<div></div>
<div class="ui-dialog">
<div>
<div>
<input type="checkbox" name="checklist[]" checked="" value="Adam">
<input type="checkbox" name="checklist[]" checked="" value="Eve">
<input type="checkbox" name="checklist[]" checked="" value="Ana">
</div>
<input type="button" name="checked_submit" id="checked_submit" value="submit">
</div>
</div>

3 个答案:

答案 0 :(得分:0)

td点击

时查找父ID
$('td').click(function(){
  var idOfTheParentElement =  $(this).closest('tr').attr('id');
})

答案 1 :(得分:0)

您可以尝试在打开对话框之前保存父级,然后单独使用该父级执行某些操作:

$("td").click(function() {

    var parent = $(this).parent();

    // dialog code here
    $.dialogOrSomething({
        onClose: function() {
            doSomethingWithParent(parent);
        }
    })

});

答案 2 :(得分:0)

$('td').click(function(){
  var parent =  $(this).closest('tr').attr('id');
});