在我的应用程序中,动态数据通过两种方式检索到页面
页面加载后,发送ajax请求并以JSON形式检索数据
在生成页面时,JSON 数据会写入服务器端 JavaScript 所在的页面(例如在 JSP 中。
var data='<%=jsonData%>';
)正如我在 google 中发现的那样,建议将 JSON 中的 html 作为 JSON 值发送并返回到浏览器中 ( like this )。
我想将 html 页面和 json 数据放在一起,而不需要上述步骤。请问有什么建议吗?
注意:我使用 Spring、Struts 框架。即使有这样的框架的支持,有什么可能的方法吗?
最佳答案
将 HTML 作为 JSON 值返回根本不是问题(但不推荐这样做。这就是 AngularJS 这么好的原因)。您只需要小心一些可能会破坏 JSON 返回的字符。示例:
转义引号:
var myobject = {
name: 'contentHTML',
value: '<div><a href="#" onclick="goTo(\'test.html\')"></a></div>'
};
替换断线也是一个好主意:
var myobject = {
name: 'contentHTML',
value: '<div><a href="#" onclick="goTo(\'test.html\')">
</a></div>' // It will not work.
};
在你的 HTML 中你可以做这样的事情(使用 jQuery):
$('#myContent').append(myobject.value);
关于javascript - 如何发送 HttpResponse(包括 JSON 和 html),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27721313/