-4
$("#tblTest td:nth-child(3) a").click(function (event) {                     
       event.preventDefault();
       var $td = $(this).closest('tr').children('td');
       document.getElementById('id').value = $td.eq(0).text();
       document.getElementById('AppName').value = $td.eq(1).text();                        
});

我使用这个ans并且它工作正常但我的问题是在那个td中我有2个按钮(编辑和删除)点击编辑功能工作。但是我的删除按钮不是删除数据 bcz buttonclk 事件在此功能的 bcz 中不起作用。请建议一些答案..

4

2 回答 2

1

如果你发布了你的 html 会更容易回答,但我猜它看起来像这样:

<table id="tblTest">
...
<td> <!-- this is the third td in #tblTest (#tblTest td:nth-child(3)) -->
    <a ...>Edit</a>
    <a ...>Delete</a>
</td>
</table>

您的 jQuery 选择器正在寻找第三个元素中的所有 -tags。然后该函数调用 event.preventDefault()。问题是当您想要匹配编辑按钮时,您匹配两个按钮。一个简单的解决方案是将一个类添加到编辑按钮,然后将该类添加到选择器,因此该功能仅针对编辑按钮触发。这就是我将如何解决它:

<table id="tblTest">
...
<td>
    <a ... class="edit_button">Edit</a> <!-- add class to edit button. -->
    <a ...>Delete</a>
</td>
</table>

// will now only trigger for the edit button.
$("#tblTest td:nth-child(3) a.edit_button").click(function (event) { 
    ...
}
于 2013-04-18T08:48:35.503 回答
-4

jquery 选择器 "$()" 只选择第一个匹配的元素,使用 ".find(*)" 函数代替。

于 2013-04-18T08:20:52.390 回答