我想检索具有{{_tagName_
类的第一个元素的父级的_classname_
,data-droprow="7"
和数据信息(在这种情况下为".item assigned"
) 1}}。
data-rowtm="1"
类似于:
<table class="otable">
<tbody>
<tr class="batt" data-rowbatt="1">
<td class="drop droppable" data-droprow="3"></td>
<td class="drop droppable" data-droprow="4"></td>
<td class="drop droppable" data-droprow="5"></td>
<td class="drop droppable" data-droprow="6"></td>
<td class="drop droppable" data-droprow="7">
<div class="item assigned" data-rowtm="1" data-endtm="13" data-starttm="7"></div>
</td>
<td class="drop droppable" data-droprow="8"></td>
<td class="drop droppable" data-droprow="9">
</tr>
</tbody>
</table>
答案 0 :(得分:1)
你拥有的几乎是正确的,使用.parent()你可以实现你可以选择包含给定数据的元素的父级。演示https://jsfiddle.net/4o3m6euv/1/
var variable=1;//Or whatever you search for...
var $div = $(".drop.droppable [data-rowtm='" + variable + "']").parent();
alert($div.data('droprow'));//Gives '7'
alert($div.prop('class'));//Gives 'drop droppable'
alert($div.prop('tagName'));//Gives 'TD'
答案 1 :(得分:0)
您
var $div = $(".drop droppable").find("[data-rowtm='" + variable + "']");
...非常接近,你只想在.
之后使用.drop
代替空格:
var $div = $(".drop.droppable").find("[data-rowtm='" + variable + "']");
// ----------------^
或者,一个一个:
var $div = $(".drop.droppable [data-rowtm='" + variable + "']");
答案 2 :(得分:0)
您需要.filter()
td
元素:
var td = $('.otable .drop.droppable').filter(function(){
return $(this).find('.item.assigned').length !== 0;
});
console.log('tag ::::->', td.prop('tagName'))
console.log('data-droprow ::::->', td.data('droprow'))
console.log('class ::::->', td.attr('class'))
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table class="otable" width='500' border='1'>
<tbody>
<tr class="batt" data-rowbatt="1">
<td class="drop droppable" data-droprow="3"></td>
<td class="drop droppable" data-droprow="4"></td>
<td class="drop droppable" data-droprow="5"></td>
<td class="drop droppable" data-droprow="6"></td>
<td class="drop droppable" data-droprow="7">
<div class="item assigned" data-rowtm="1" data-endtm="13" data-starttm="7">dd7</div>
</td>
<td class="drop droppable" data-droprow="8"></td>
<td class="drop droppable" data-droprow="9">
</tr>
</tbody>
</table>
&#13;