我正在使用 find 来选择内部
$(".pauseAnomaly[data-id=78]").parent().parent().prev().find(".pauseaction").each(function (i) {
pauseActionUI($(this).data("id"));
});
我想在 $(".pauseAnomaly[data-id=78]").parent() 中找到的每个
.pauseAction
上启动 .pauseAction
.parent().prev().
在这里,当有单个 .pauseaction
时它工作完美,但当有多个 .pauseaction
时没有任何效果,为什么?以及如何解决这个问题?
换句话说
当我这样做
$(".pauseAnomaly[data-id=35]").parent().parent().prev().find(".pauseaction").each(function (i) {
alert($(this).data("id"));
});
如果有一个.pauseaction
,它返回一个id,但是当有多个.pauseaction
时,它返回我[]
,但我很想看到所有的 id 并将 funcito 应用于所有这些,为什么以及如何?
我认为 find()
只返回一个元素,所以如果它是真的,我该如何进行更改才能拥有所有元素?
这是我 $(".pauseAnomaly[data-id=14]").parent().parent().prev()
<table>
<tr>
<td style="border-top-width:0;padding-top:0;padding-left:0;padding-right:0;padding-bottom:0;">
<table class="table table-striped" style="margin-bottom:0;">
<tbody>
<tr class="actionRow actionRow" data-id="9">
<td><span class="glyphicon spaceAfterIcon vorx late glyphicon-remove red" data-id="9"></span></td>
<td>TEXT</td>
<td>TEXT</td>
<td class="date" data-id="9">03/04/2015</td>
<td>SELECT</td>
<td><span class="glyphicon glyphicon-comment commentAction red" data-actiondescr="Reparer le chauffage (date de fin plann. depassée)" data-actionid="9" data-id="9"></span> | <span class="glyphicon glyphicon-pause red pauseAction" data-id="9"></span> <span class="closeActionButtons" data-id="9">| <span class="glyphicon glyphicon-ok-circle red closeOKAction" data-id="9"></span>/ <span class="glyphicon glyphicon-remove-circle red closeNOKAction" data-id="9"></span></span></td>
</tr>
<tr class="actionRow desactivatedColor actionRow" data-id="10">
<td><span class="glyphicon spaceAfterIcon vorx late" data-id="10"></span></td>
<td>TEXT</td>
<td>TEXT</td>
<td class="date" data-id="10">03/04/2015</td>
<td>SELECT</td>
<td><span class="glyphicon glyphicon-comment commentAction red" data-actiondescr="Installer un thermostat pour réguler le chauffage" data-actionid="10" data-id="10"></span> | <span class=" glyphicon glyphicon-play red playAction" data-id="10"></span> <span class="closeActionButtons" data-id="10" style="display:none;">| <span class="glyphicon glyphicon-ok-circle red closeOKAction" data-id="10"></span>/<span class="glyphicon glyphicon-remove-circle red closeNOKAction" data-id="10"></span></span></td>
</tr>
<tr class="actionRow actionRow" data-id="13">
<td><span class="glyphicon spaceAfterIcon vorx late glyphicon-remove red" data-id="13"></span></td>
<td>TEXT</td>
<td>TEXT</td>
<td class="date" data-id="13">27/03/2012</td>
<td>SELECT</td>
<td><span class="glyphicon glyphicon-comment commentAction red" data-actiondescr="Action closed" data-actionid="13" data-id="13"></span> | <span class=" glyphicon glyphicon-pause red pauseAction" data-id="13"></span> <span class="closeActionButtons" data-id="13">| <span class="glyphicon glyphicon-ok-circle red closeOKAction" data-id="13"></span>/ <span class="glyphicon glyphicon-remove-circle red closeNOKAction" data-id="13"></span></span></td>
</tr>
</tbody>
</table>
</td>
</tr>
</table>
最佳答案
问题出在选择器的大小写上,因为它需要是 pauseAction
而不是 pauseaction
。下面是一个对其进行说明的演示。
$("table").find(".pauseAction").each(function (i) {
alert($(this).data("id"));
});
因此,您的代码将变为(前提是 .pauseAnomaly[data-id=14]
选择器存在!):
$(".pauseAnomaly[data-id=14]").parent().parent().prev().find(".pauseAction").each(function (i) {
alert($(this).data("id"));
});
演示@ Fiddle
关于javascript - find() 用于多个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30392204/