我有一个Ajax调用,返回一段HTML代码,应该替换页面上的旧HTML代码,并给它们新属性。在我成功地动态更改元素之后,我想运行另一段JS代码,读取并使用重新加载的元素的某些属性。然而,JS更喜欢读取旧数据(好像它正在同步运行)。
我找到的唯一解决方法是设置一个计时器,但计时器的延迟时间必须相对较高(300毫秒),以确保它总是正确完成。有什么正确的方法可以做到这一点吗?
以下是我现在的伪代码。它可以工作,但300毫秒的延迟时间太糟糕了。
我找到的唯一解决方法是设置一个计时器,但计时器的延迟时间必须相对较高(300毫秒),以确保它总是正确完成。有什么正确的方法可以做到这一点吗?
以下是我现在的伪代码。它可以工作,但300毫秒的延迟时间太糟糕了。
$.post( "ajax/test.html", function( newCode ) {
$("#myDynamicDiv").html(newCode);
setTimeout(function(){
//Use the data that was just stored in #myDynamicDiv
},300);
});