【发布时间】:2014-09-25 10:33:26
【问题描述】:
我有 2 页,1.first.html,2.second.html(带有简单的 html 标记)。 在这两个页面中,我都有一个 div#container。
我在页面底部链接了两个页面中的 .js 文件(jquery、app、插件) 我在 first.html 中有一个锚链接(链接到 second.html),我用 jquery 处理了锚上的点击事件,我的代码如下所示:
$('a').on('click', function(){
$('#container').load($(this).attr('href') + ' #container');
});
上面的代码可以工作,但是 js 代码(用于加载的内容)不工作。 (例如我在 second.html 中使用了验证插件,或者在 second.html 中使用 ajax 提交了一些数据) 关键是,如果我重定向到 second.html(不使用 ajax),所有代码都可以正常工作!
以下是来自 api.jquery.com 的关于加载函数的文字:
当使用没有后缀选择器的 URL 调用 .load() 时 表达式,内容在脚本被传递之前传递给 .html() 删除。这会在脚本块被丢弃之前执行它们。如果 .load() 是在 URL 附加一个选择器表达式的情况下调用的, 但是,在更新 DOM 之前,脚本会被删除, 因此没有被执行
我该如何解决这个问题?任何替代方式?或者...
【问题讨论】: