Javascript 从多个克隆的div获取特定的h3
我试图在按下按钮时从克隆的div中获取特定的h3。因为我得到了10个具有完全相同值的克隆div,所以我希望能够从我刚刚按下的特定按钮获得h3Javascript 从多个克隆的div获取特定的h3,javascript,jquery,html,Javascript,Jquery,Html,我试图在按下按钮时从克隆的div中获取特定的h3。因为我得到了10个具有完全相同值的克隆div,所以我希望能够从我刚刚按下的特定按钮获得h3 $(“body”)。在(“click”、“.btnFavorite”函数()上{ var favoriteMovieTest=$(this.parent().find(“h3”); 警报(favoriteMovieTest); }); 对于(变量i=0;i
$(“body”)。在(“click”、“.btnFavorite”函数()上{
var favoriteMovieTest=$(this.parent().find(“h3”);
警报(favoriteMovieTest);
});
对于(变量i=0;i<10;i++){
$(“.search result:first”).clone().appendTo(“.search”);
}
滴度(年)
试试这个
注意:在for
循环之后保留要附加事件处理程序的代码,因为如果在for
循环之前执行,则for循环创建的元素不会附加事件处理程序
for(变量i=0;i<10;i++){
$(“.search result:first”).clone().appendTo(“.search”).find(“h3”).append(“+i”);
}
$(.btnFavorite”)。在(“单击”,函数()上{
var-favoriteMovieTest=$(this.sillides(“h3”)[0];
console.log(favoriteMovieTest);
});代码>
滴度(年)
您可以这样做:
for(变量i=0;i<10;i++){
$(“.search result:first”).clone().appendTo(“.search”);
}
$(.btnFavorite”)。在(“单击”,函数()上{
var-favoriteMovieTest=$(this).closest(“div”).find(“h3”);
css('color','red');
});代码>
滴度(年)
您可以在DOM上下翻滚,以获取已单击克隆元素的名称或索引号
$(“body”)。在函数(e)上单击“.search.btnFavorite”{
var elIndex=Array.from(e.target.parentNode.parentNode.children).indexOf(e.target.parentNode);
var favoriteMovieTest=e.target.parentNode.innerText;
警报('H3:'+favoriteMovieTest+'索引:'+eIndex);
});
对于(变量i=0;i<10;i++){
$(“.search result:first”).clone().appendTo(“.search”);
};代码>
职称(年)
我认为您需要更改var-favoriteMovieTest=$(“this”).parent().find(“h3”)
tovar-favoriteMovieTest=$(this.parent().find(“h3”)代码>您的代码正在查找一个不存在的html元素。谢谢,我们将对此进行编辑。但还是不能解决我的问题。还有,为什么人们会投反对票…嗯,这在我的代码中似乎不起作用,这不是只会得到第一个元素[0]?不。你的代码有所有相同的元素,所以你认为它每次都得到相同的元素。让我做一些修改来显示一些区别。您的示例代码只有一个h3。jquery将返回一个数组,并将目标指向要使用[0]的元素,该元素提供h3。您可以尝试debugger
并测试返回给您的$(此)
是什么,然后在控制台中使用它来解决问题。@Amar对代码做了一些小更改,请查看一下。这应该可以消除您的疑虑。是的,我确实知道我所有的示例代码都只有相同的h3,但我在实际代码上尝试了这一点,警报给了我输出[object HTMLHeadingElement]