将 javascript 嵌入到通过 AJAX 返回的部分中是否被认为是不好的做法?
假设在http://mysite.com上,我有一个通过 AJAX 获取表单的按钮。现在假设我想使用 jQuery 向这个表单添加一些 javascript 事件处理程序(用于验证等)。
目前的方法似乎是:
- 在返回表单的 AJAX 回调中,我可以为标签设置事件处理程序。
我不喜欢这种方法,因为它将控制我的表单的代码放在两个地方:在呈现的部分中,以及在包含的全局 javascript 文件中。
- 与其从服务器端返回表单,不如在客户端做所有事情。当需要来自服务器的响应时(例如,验证表单),从服务器返回 JSON,并在 JavaScript 中创建生成的 HTML 元素(例如错误消息)。
现在这种方法让我感觉好像是在使用 JavaScript 创建 HTML 元素,而不是使用更强大的服务器端工具(模板语言)来完成它。
我觉得解决方案涉及将 JavaScript 代码嵌入到 AJAX 部分返回的 HTML 中,因此它是我的应用程序的一个独立功能组件,并且所有代码都在一个地方。
有没有一种更清洁的方式来做我想做的事情?