2

我在选择 DOM 上的元素时遇到问题。

td类垃圾桶的所有链接如何选择?

<td class="trash_can">
<a rel="nofollow" data-remote="true" data-method="delete" data-confirm="Are you sure you want to delete Greek Theater at U.C. Berkeley?" href="/promotions/2/places/46">
<img id="trash_can" src="http://test.dev/images/trash.png?1305741883" alt="Trash">

以下代码不执行任何操作且无法正常工作:

$(function(){
  $('.trash_can').live("click", function(event) {
    console.log('Clicked Delete');
    event.preventDefault();
  });
});
4

3 回答 3

2

你需要一个锚标签到选择器

$(function(){
  $('.trash_can a').live("click", function(event) {
    console.log('Clicked Delete');
    event.preventDefault();
  });
});

你也应该使用.delegate()而不是 live()

例子:

$(".trash_can").delegate("a", "click", function(){
        console.log('Clicked Delete');
        event.preventDefault();
});
于 2011-06-09T17:16:47.497 回答
2

.trash_can选择你的td,而不是它的a。您想将事件处理程序应用于a元素。

$(function(){
  $('.trash_can a').live("click", function(event) {
    console.log('Clicked Delete');
    event.preventDefault();
  });
});
于 2011-06-09T17:16:58.483 回答
0

您可能想要选择链接本身而不是 td.

 $(function(){
   $('.trash_can a').live("click", function(event) {
     console.log('Clicked Delete');
     event.preventDefault();
   });
 });
于 2011-06-09T17:17:46.703 回答