为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery.load()调用不会在加载的HTML文件中执行JavaScript

jQuery.load()调用不会在加载的HTML文件中执行JavaScript

肥皂起泡泡 2019-07-03 16:41:50
jQuery.load()调用不会在加载的HTML文件中执行JavaScript这似乎是一个只与Safari相关的问题。我已经在Mac上尝试了4次,在Windows上尝试了3次,但仍然没有运气。我正在尝试加载一个外部HTML文件,并让嵌入的JavaScript执行。我试图使用的代码是:$("#myBtn").click(function() {     $("#myDiv").load("trackingCode.html");});trackingCode.html如下所示(现在很简单,但如果我完成此工作,则会展开一次):<html><head>     <title>Tracking HTML File</title>     <script language="javascript" type="text/javascript">         alert("outside the jQuery ready");         $(function() {             alert("inside the jQuery ready");         });     </script></head><body></body></html>我在IE(6&7)和Firefox(2&3)中都看到了警告消息。但是,我无法在Safari中看到消息(我需要关注的最后一个浏览器-项目要求-请不要使用火焰大战)。对于Safari为什么忽略trackingCode.html档案?最终,我希望能够将JavaScript对象传递给这个trackingCode.html在jQuery就绪调用中使用的文件,但我希望在开始之前确保在所有浏览器中都可以这样做。
查看完整描述

3 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

$("#images").load(location.href+" #images",function(){
    $.getScript("js/productHelper.js"); });


查看完整回答
反对 回复 2019-07-03
?
富国沪深

TA贡献1790条经验 获得超9个赞

另一个版本约翰·皮克(JohnPick)解就在此之前,这件事对我来说很好:

jQuery.ajax({
   ....
   success: function(data, textStatus, jqXHR) {
       jQuery(selecteur).html(jqXHR.responseText);
       var reponse = jQuery(jqXHR.responseText);
       var reponseScript = reponse.filter("script");
       jQuery.each(reponseScript, function(idx, val) { eval(val.text); } );
   }
   ...});


查看完整回答
反对 回复 2019-07-03
  • 3 回答
  • 0 关注
  • 1636 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信