【问题标题】:Use of script returned from jQuery AJAX response使用从 jQuery AJAX 响应返回的脚本
【发布时间】:2013-03-08 02:46:47
【问题描述】:

当我们使用脚本作为 jQuery/AJAX 响应的响应时,它对我们有何帮助?

我们可以在发出 AJAX 请求后直接执行该响应脚本的函数吗?

任何基本的例子都会很棒。

【问题讨论】:

  • 是的,请查看 Ajax 的 jQuery 文档。它有示例,并且有一个快捷方式 getScript。为什么听起来我们在为你回答作业问题?
  • 我想知道你需要它做什么。或许您应该转而使用 name 函数?
  • 还有很多问题,代码可以帮助澄清 - 你真的将脚本添加到页面吗?这一切看起来像什么?

标签: javascript jquery ajax


【解决方案1】:

是的,我们可以使用getScript 方法来获取脚本,它使用GET HTTP 请求来获取然后执行脚本。因此,您可以在 AJAX 请求之后直接执行该响应的功能。有关更多详细信息和示例,请查看此链接上的 jQuery 文档http://api.jquery.com/jQuery.getScript/

【讨论】:

    【解决方案2】:

    你可以使用eval(scriptStrings);这是javascript中的一个基本功能。

    您还可以将这些字符串作为一个元素附加到要评估的当前文档中,请记住以下代码:

    function addJavascript(jsname,pos) {
      var th = document.getElementsByTagName(pos)[0];
      var s = document.createElement('script');
      s.setAttribute('type','text/javascript');
      s.setAttribute('src',jsname); 
      th.appendChild(s);
    }
    

    【讨论】:

      【解决方案3】:

      jQuery getScript 可用于异步加载任何静态脚本资源。它在下载后立即执行脚本。您可以使用回调选项从中调用任何函数。

      但是如果你的 ajax 响应是一个字符串。你必须使用eval 函数。但在使用它之前,请阅读其中一些 EVAL MDNeval is evil

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-09-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-12
        相关资源
        最近更新 更多