Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 多个结果的find()_Javascript_Jquery_Each - Fatal编程技术网

Javascript 多个结果的find()

Javascript 多个结果的find(),javascript,jquery,each,Javascript,Jquery,Each,我使用find作为选项来选择内部 $(".pauseAnomaly[data-id=78]").parent().parent().prev().find(".pauseaction").each(function (i) { pauseActionUI($(this).data("id")); }); 我想在每个上启动.pauseAction。pauseAction位于$(

我使用find作为选项来选择内部

$(".pauseAnomaly[data-id=78]").parent().parent().prev().find(".pauseaction").each(function (i) {
                                pauseActionUI($(this).data("id"));
                            });
我想在每个
上启动
.pauseAction
。pauseAction
位于
$(“.pauseAnomaly[data id=78]”)中。parent().parent().prev()。

在这里,当有一个
.pauseaction
时,它可以完美地工作,但当有多个
时,它就什么都没有了。为什么?如何解决这个问题

换句话说

当我这样做的时候

$(".pauseAnomaly[data-id=35]").parent().parent().prev().find(".pauseaction").each(function (i) {
                                alert($(this).data("id"));
                            });
当有一个
.pauseaction
时,它返回一个id,但当有多个
.pauseaction
时,它返回我
[]
,但我希望看到所有id并对所有id应用funcito,为什么以及如何

我认为
find()
只返回一个元素,所以如果它是真的,我如何进行更改以获得所有元素

下面是当I
$(“.pauseAnomaly[data id=14]”)时的代码。parent().parent().prev()


正文
正文
03/04/2015
挑选
|  | / 
正文
正文
03/04/2015
挑选
|  | /
正文
正文
27/03/2012
挑选
|  | / 

您能尝试一下您的每个功能吗:

$(this)[i].data('id')
如果这不起作用,请尝试:

$($(this)[i]).data('id')
我所做的是选择找到的元素,因为它是一个数组,所以在循环中选择特定的索引

例如,如果循环中的i=2,选择器将如下所示:

$(this)[2].data('id')

它将返回该数组中的3个元素

问题在于选择器的情况,因为它需要是
pauseAction
,而不是
pauseAction
。下面是一个演示,说明了这一点

$("table").find(".pauseAction").each(function (i) {
    alert($(this).data("id"));
});
因此,您的代码将变成(提供了
.pauseAnomaly[data id=14]
选择器存在!):


Demo@

提供所有相关代码(
pauseActionUI()
,HTML标记???),因为在我看来,它应该可以工作。仅供参考,您最好使用
parents('selector')
closest('selector')
方法,而不是
parent()。parent()
请同时提供相关的html。@A.Wolff:感谢您的关注。PaulActuoNUI只对元素进行一些更改,对于这个问题,我们可以考虑用警报(“”)替换ActuoUI。我添加了HTMLI,没有看到任何元素与
匹配。pauseAnomaly[data id=35]“
选择器
data()
是一个jQuery方法,
[x]
返回一个DOM节点。因此,使用
.eq(x)
$("table").find(".pauseAction").each(function (i) {
    alert($(this).data("id"));
});
$(".pauseAnomaly[data-id=14]").parent().parent().prev().find(".pauseAction").each(function (i) {
    alert($(this).data("id"));
});