如何设计动态脚本生成作为AJAX响应的一部分
How to design dynamic script generation as part of AJAX response?
我正在试验模块化AJAX设计,其中返回一个脚本来处理和显示有效负载。我目前有以下JSON响应工作,但我想在构建应用程序方面得到一些建议,以便以更可维护的方式支持它。
{
payload: "<div class='"test'">Something</div>",
load: "jQuery(this.payload).appendTo('body')"
}
要生成"加载"脚本,我考虑:
通过
this
传递所有动态变量并从服务器加载固定JavaScriptjQuery(this.payload).appendTo(this.appendTo)
用动态内容替换JavaScript中的特殊模板:
jQuery(this.payload).appendTo('{{APPENDTO}}')
也许会有更好的方法?
之前我有以下结构;
[
{
args: ["<div class='"test'">Something</div>"],
method: "appendTo",
selector: "body"
},
...
]
你可以这样做;
var foo = JSON.parse(theJSON);
for (var i=0;i<foo.length;i++) {
var curr = foo[i];
jQuery.fn[method].apply($(curr.selector), curr.args);
}
这支持最常见的DOM方法,但也可以支持remove()
, empty()
等;
[
{
args: [],
method: "remove",
selector: ".someElement"
},
...
]
如果这仍然过于严格,您应该考虑完全跳过JSON,而只是将响应作为<script>
标记插入到页面中。
相关文章:
- 不再使用innerHTML进行AJAX响应.(代码未得到响应)
- 为什么可以't我使用了AJAX响应的一部分
- Ajax响应转换
- 如何在数据表中设置从Ajax响应选中的复选框
- 在Javascript中的ajax响应之后未调用Dropdown事件
- RubyonRails-Ajax响应的问题
- Ajax:Ajax响应中的链接不起作用
- 如何执行ajax响应返回的javascript函数
- 带有 AJAX 响应或 AJAX 响应的 IF 条件.响应.Text 不起作用
- 正在检查ajax响应中的错误数据
- 如何从ajax响应中重新加载整个页面
- 如何使用jQuery/Ajax响应特定的提交按钮
- 是浏览器在AJAX响应中自动处理的HTTP标头
- Masony无法处理ajax响应
- 使用yii2表单等待ajax响应
- jquery返回ajax响应和用户定义的变量到函数
- 使用Ajax响应更新TextBox
- 如何在jquery ajax响应后设置jquery滑块的起始值
- Rails 4中不执行Ajax响应
- jquery解析ajax响应