我在页面中使用jQuery插件版本1.8.1。我创建了一个函数,根据下面的代码创建动态脚本,并将其放置在HTML页面的BODY中。动态脚本与document.ready()侦听器不执行与AJAX调用
<script> $(document).ready(function(){ // .... Some javascript }); </script>
上述动态脚本获取一些额外的HTML和使用AJAX和JQuery的追加到身体标记,但阿贾克斯完成后它不会执行。如果我添加一个如下所示的简单警报('something'),那么它会执行。
<script> alert('something'); $(document).ready(function(){ // .... Some javascript }); </script>
请告诉我是什么问题,我想的document.ready()无警告()框执行动态脚本..
Ajax是异步的。 $(document).ready()不会等到ajax完成。警报会阻止所有JavaScript执行,但不阻止http请求,因此ajax会在文档就绪事件处理程序触发前完成。解决方法是不用这种方式编码。将需要ajax的所有代码放在ajax的成功处理程序中。 (另外,不要使用警报来调试...) – 2013-04-22 17:23:51