首页  >  文章  >  web前端  >  如何评估 Ajax 响应返回的 JavaScript 函数?

如何评估 Ajax 响应返回的 JavaScript 函数?

Linda Hamilton
Linda Hamilton原创
2024-10-22 12:44:03169浏览

How to Evaluate Returned JavaScript Functions from Ajax Responses?

集成 Ajax 返回的 JavaScript 函数

当 Ajax 响应传递包含 JavaScript 函数的脚本块时,就会出现挑战。必须执行此函数才能触发特定操作。

解决方案:评估函数代码

尽管它位于

中,但元素中,浏览器不知道新函数的存在,除非显式执行声明代码。为了实现这一点,函数的代码必须使用 eval() 进行评估,正式声明该函数并使其在整个页面的生命周期中都可以访问。

考虑以下简化示例:

<code class="html"><script>
  var newFunc = '<script>function go() { alert("Hello!") }</script>';
  var e = document.getElementById('myElement');
  e.innerHTML = newFunc;
  eval(document.getElementById('newFunc').innerHTML);
</script></code>

在这个场景中,没有使用Ajax,但是概念还是一样的。脚本块动态插入到

中。 before eval() 用于执行函数声明。

其他注意事项

值得注意的是,这种方法可能并非在所有情况下都是最佳的。重复的 Ajax 调用或对不同上下文中函数持久性的关注可能需要替代的设计解决方案,例如:

  • 在单独的 JavaScript 文件中公开函数
  • 采用 krosenvold 概述的原型方法(跨浏览器兼容性、经过测试的功能)

最终,最佳解决方案取决于应用程序的具体要求和上下文。

以上是如何评估 Ajax 响应返回的 JavaScript 函数?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn