将 JavaScript 嵌入到 AJAX 部分响应中

Embedding JavaScript into an AJAX partial response

本文关键字:响应 AJAX JavaScript      更新时间:2023-09-26

将javascript嵌入到通过AJAX返回的部分中被认为是不好的做法吗?

假设在 http://mysite.com 上,我有一个通过 AJAX 获取表单的按钮。 现在假设我想使用 jQuery 向这个表单添加一些 javascript 事件处理程序(用于验证等)。

目前的方法似乎是:

  • 在返回表单的 AJAX 回调中,我可以设置事件处理程序作为标记。

我不喜欢这种方法,因为它将控制我的表单的代码放在两个地方:在渲染的部分和在包含的全局 javascript 文件中。

  • 不要从服务器端返回表单,而是执行客户端的所有操作。当需要来自服务器的响应(例如,验证表单)时,从服务器返回 JSON,并在 JavaScript 中创建生成的 HTML 元素(如错误消息)。

现在这种方法让我觉得,我正在使用JavaScript来创建HTML元素,而不是使用更强大的服务器端工具(模板语言)来做到这一点。

我觉得解决方案涉及将JavaScript代码嵌入到AJAX部分返回的HTML中,以便它是我的应用程序的独立功能组件,并且所有代码都在一个地方。

有没有更清洁的方式来做我在这里尝试做的事情?

我不确定今天是否可以提出这样的论点,即与其他后端语言相比,javascript 在"功率"方面在某种程度上不如......我想也许是因为今天的javascript是一种有效的后端语言

我认为第二个选项是有意义的,因为您包含客户端/接口代码,并隔离服务器端逻辑以进行数据操作和呈现。

在我看来,有很多JavaScript模板库运行良好,也就是说,如果您不想走完整的javascript MVC路线。