JQuery使用ajax复制javascript到文档

JQuery duplicating javascript to document using ajax

本文关键字:文档 javascript 复制 使用 ajax JQuery      更新时间:2023-09-26

在左侧菜单中使用这个脚本在div中加载一个新页面:

$("#button").live('click',function(){
                $("#content")
                .html(ajax_load)
                .load("page.html");
            });

在page.html中有一些javascript使用ajax(也使用jquery)添加一些UI元素。

当我点击相同的左侧菜单项5次(所以div加载5次),似乎在page.html中的javascript被复制。当我调用page.html中的函数时,它会被执行5次!!

如何解决这个问题?

如果你对page.html内部的任何东西使用live(),即使加载了新的page.html,事件处理程序也会持续存在,这可能就是为什么你要多次执行相同的操作

什么javascript执行发生在"page.html"是事件绑定?如果是这样,请查看.live()方法并将javascript从page.html文件中取出。当page.html中的元素进入作用域时,它们将被live()方法中的绑定正确处理。

如果您正在做其他事情,请提供更多的上下文