【问题标题】:Cannot dynamically load JavaScript file twice in IE无法在 IE 中动态加载 JavaScript 文件两次
【发布时间】:2012-05-24 02:27:24
【问题描述】:

我已经构建了this 页面。 当您点击表格中的一行时,页面会发送一个 ajax 数据请求,然后在正文中动态创建一个名为 加载图表。它适用于所有 chrome 和 FF,但不适用于 IE8。 含义-当您单击行时,它可以工作,但是第二行和脚本未加载.. 我什至不知道如何在 IE8 中调试它。 有人可以推荐一个解决方案吗? :-)

加载其他脚本的脚本是

$.post("shorts.server.php", $.param({
     val: stocknumber,
     id: id,
     name: stockname,
     group: stockgroup
 }), function (response) {
     //alert(response);
     // We dynamically add javascript headers
     var head = document.getElementsByTagName('body')[0];
     script = document.createElement('script');
     //dynamic_graph.js changes it's content by the current selected stock
     //see shorts.server.php for details
     script.src = 'jQuery/head/dynamic_graph.js';
     head.appendChild(script);
     script = document.createElement('script');
     //dynamic_graph.js changes it's content by the current selected stock
     //see shorts.server.php for details
     script.src = 'jQuery/head/dynamic_info.js';
     head.appendChild(script);
 });

【问题讨论】:

  • 我们怎么能不喜欢这个标题呢? 它只是说明了一切! “javascript jquery” 完美!等等,"javascript jquery question" 怎么样?
  • @gdoron 不再是 :-)
  • @ManseUK。你毁了我最好的评论之一...... :)
  • 难道你不应该有'var head = document.getElementsByTagName('head')[0];'而不是 'var head = document.getElementsByTagName('body')[0];'??这可能解决了这个问题,虽然我不确定这个......

标签: javascript jquery internet-explorer-8 cross-browser


【解决方案1】:

在 IE9 中按 F12 运行调试器。在调试器中,您可以选择浏览器模式,例如:IE8。 使用 Jquery 进行所有 DOM 交互和浏览器兼容性。

【讨论】:

    【解决方案2】:

    尝试使用jQuery.getScript:

    function(response)
    {
         $.getScript('jQuery/head/dynamic_graph.js');
         $.getScript('jQuery/head/dynamic_info.js');
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-23
      • 2021-08-11
      相关资源
      最近更新 更多