gpt4 book ai didi

javaScript 不适用于由 jquery 加载函数加载的页面

转载 作者:行者123 更新时间:2023-11-28 01:59:53 24 4
gpt4 key购买 nike

第 1 页

<html>
<head>
<script src="jquery-1.8.3.js" type="text/javascript"></script>
</head></head>
<body><div id="main"></div> </body>
<script>$('div[id=main]').load('page2.php')
$('span[id*=temp]').on('click',function(){
alert(this.id); }); //this block of code not working!!
</script>
</html>

第 2 页

<div>
<span id="temp">
this is demo
</span>
</div>

基本上我想在单击标签时在主 div 中再次加载 page2 但我无法在第一页中获取标签的 id,page1 的脚本不适用于第二页的项目或标签

最佳答案

您试图在 AJAX 调用之后立即绑定(bind)事件,因此该元素尚不存在。该调用是异步的,因此不会停止代码执行以等待响应。

要么在内容加载后绑定(bind)元素,使用 load 方法的 success 回调:

$('div#main').load('page2.php', function(){
$('span[id*=temp]').on('click', function(){
alert(this.id);
});
});

或使用委托(delegate)将事件绑定(bind)到父元素:

$('div#main').load('page2.php');
$('div#main').on('click', 'span[id*=temp]', function(){
alert(this.id);
});

关于javaScript 不适用于由 jquery 加载函数加载的页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14569572/

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