gpt4 book ai didi

javascript - 使用 jquery 插入动态 HTML 后单击不起作用

转载 作者:行者123 更新时间:2023-12-03 10:26:57 25 4
gpt4 key购买 nike

我试图通过每当单击一个 div 时,它都会给出该 div 的 numberDiv 来实现代码可重用性。属性。它适用于第一个具有类 divClassSelector 的默认 div。 ,但我还有一些其他 js 代码,每当您按下按钮“+1 Div”时,都会插入另一个 div。然后,当我尝试提醒新创建的 div 的 numberDiv 属性时,它不起作用。我假设这是因为新创建的div在页面首次加载时不存在于DOM中,因此无法找到新的div。不过我可能是错的。

有人知道这个问题的解决方法吗?非常感谢任何帮助。

这是我的代码:

//HTML
...
<body>
<div class="divClassSelector" numberDiv="1"></div>
<button id="plusOneDiv">+1 Div</button>
</body>
...

//My JS:

//Code to alert the div's numberDiv attribute value
$(".divClassSelector").on("click", function(){
var numberDiv = $(this).attr("numberDiv");
alert(numberDiv);
});

//Code to insert another div
var count = 2;
$("#plusOneDiv").click(function(){
$(body).append(<div class="divClassSelector" numberDiv="'+count+'">');
count++;
});

感谢您的提前帮助和欢呼!

<小时/>

更新1:

有谁知道如何在单击 div 时触发一个事件,该事件是通过将“焦点”放在表单输入字段上(即,当您单击它并与其交互时)触发的。我尝试使用“焦点”方法,但它一遍又一遍地提醒同一件事,直到我关闭选项卡,然后我才能摆脱警报无限循环。谢谢!

最佳答案

首先将这个“$”添加到您的代码中:--$(this).attr("numberDiv");--

$(".divClassSelector").on("click", function(){
var numberDiv = $(this).attr("numberDiv");
alert(numberDiv);
});

还将您的点击功能更改为

$(document).on("click",".divClassSelector", function(){
var numberDiv = $(this).attr("numberDiv");
alert(numberDiv);
});

关于javascript - 使用 jquery 插入动态 HTML 后单击不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29361140/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com