我已经阅读了几篇关于这个问题的帖子,但我无法解决。
我正在将一个 html 文件加载到一个 div 中。我正在加载的文件包含一个无序列表。 该列表应展开(带有子菜单项的菜单)并关闭。因此我需要js。 但不幸的是,这个脚本没有加载。
谁能帮帮我?
太好了!非常感谢:)
最佳答案
您想通过 AJAX 加载到您页面上的一个 div 中,让我们调用它;
1) <div id="loadStuffHere"></div>
的(abc.html)
2) 要填充的东西 loadStuffHere
来自xyz.html
就这样吧;
$("loadStuffHere").load("xyz.html");
但是等等!!您不想加载 xyz.html 中的所有内容,您只想加载 xyz.html 的一部分,比如 <div id="loadMeOnly"></div>
(xyz.html)
就这样吧;
$("loadStuffHere").load("xyz.html #loadMeOnly");
但是等等!!让我们说在 <div id="loadMeOnly"></div>
里面是一个 Accordion ,所以这意味着它必须被初始化,这意味着你还必须包括 javascripts...嗯,该怎么做...
你会想到这样做;
$("loadStuffHere").load("xyz.html #loadMeOnly");
$.getScript('js/xyz.js');
好吧,上面的内容很糟糕,因为 a) 你需要创建一个外部 js 文件,并且 b) 你实际上正在进行 2 个 http 调用,而如果你通过正常的非 ajax 方式进行,你可以用 1 个 http 调用来完成。
最好的解决方案是用 1 个调用(HTML 和 js - 1 行,1 个 http)获得 2 个东西,这就是你的做法;
$("loadStuffHere").load("xyz.html #loadMeOnly, script");
这会加载 #loadMeOnly
div 和所有 script
标签
这里的技巧是逗号。您可以选择加载任何您想要的 dom
关于javascript - jQuery ajax load() javascript 没有执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1317080/