从被点击元素的父元素中查找子元素

Finding child from parent of clicked element

本文关键字:元素 查找      更新时间:2023-09-26

我目前正在构建一个将具有"共享"按钮的事件表。一旦用户单击共享按钮,我想从特定的表中找到文本值,并将它们存储在一个变量中,以便在下一步中使用它们。基本上,当我单击共享按钮时,我想找到包装特定表的父元素,然后从每个特定单元格中找到文本值并将其存储在变量中。在我的JSFiddle中,我设置了在结果框中显示结果的设置。http://jsfiddle.net/Ak84L/5/

$("#shareButt").click(function(){ 
 var date = $(this).parent('.even_table').find('date').text();
 $(".resultbox").text("date"+date);
});

首先将shareButtdate改为class属性的值,而不是id,因为id必须唯一。

并使用以下代码:

$(".shareButt").click(function () {
    var date = $(this).closest('.event_table').find('.date').text();
    $(".resultbox").text("date" + date);
});

首先不要使用相同id。使用class代替。这样:

js

$(".shareButt").click(function(){    
     var date = $(this).parents(".event_table").find(".date").text();    
     $(".resultbox").text("date"+date);
});

小提琴

在元素中添加自定义数据标签要比使用花哨的jquery调用简单得多。

如果它足够好,像angular.js, jade, bootstrap等主要的web框架,为什么还有很多人继续尝试重新发明轮子来创建最复杂的解决方案。

JS FIDDLE示例

<div class="shareButt" date-data="12.5.2014">SHARE</div></td>
jQuery

$(".shareButt").click(function(){    
     $('.resultbox').text('date' + $(this).attr('date-data'));
});