gpt4 book ai didi

javascript - 单击 标签运行 JQuery javascript 函数

转载 作者:行者123 更新时间:2023-12-01 01:53:27 25 4
gpt4 key购买 nike

我像这样使用 PHP 创建一个跨度。

if ($subnetkey  == 1 ) { echo ("<span class='subnetkey'>S/N of: $subnetnum</span>&nbsp;&nbsp;");}

它可以工作,并在屏幕上显示正确的数据。另外,如果我使用“检查元素”查看它,它的格式正确。

<span class="subnetkey">S/N of: 780</span>

我在页面顶部有这个脚本。我也在底部尝试过。

<script>    
$(document).ready(function(){
$(".subnetkey").click(function() {
alert("subnet click mode");
});
});
</script>

当我单击跨度时,没有任何反应。我没有收到任何错误,当然我也没有看到警报。

这似乎是动态构建页面和使用页面之间的时间问题。但如果不是这样,我该怎么做才能让这个函数触发呢?

最佳答案

像 click()、dblclick()、mouseenter() 等 JQuery 事件方法仅适用于渲染 DOM 时已创建的元素。对于动态创建的元素,您可以使用 on() 方法和以下语法(请参阅 previous post ):

$(staticAncestors).on(eventName, dynamicChild, function() {});

由于它是动态创建的元素,因此您的代码将无法工作。尝试:

$(document).on('click', '.subnetkey', function() {
alert("subnet click mode");
});

jQuery 仅在运行时识别页面中的元素,因此 jQuery 无法识别添加到 DOM 的新元素。要解决这个问题,请使用 event delegation ,从新添加的项目到 DOM 中某个点的冒泡事件,该点在 jQuery 在页面加载时运行时就在那里。许多人使用 document 作为捕获冒泡事件的地方,但没有必要一直沿着 DOM 树向上走。理想情况下you should delegate to the nearest parent existing at the time of page load.

关于javascript - 单击 <span> 标签运行 JQuery javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51849568/

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