2013-04-26 63 views
0

目前我使用JSON作为AJAX的结果,并动态创建我需要的所有新DOM元素。但在这里我在想 - 对吗?例如,如果我需要创建一个<table>的数据是更好的构建它与JS或在服务器上生成它,只需追加结果到页面?追加AJAX数据的最佳方法是什么?

UPDATE 现在我这样做:

jQuery.getJSON(url, function(result){var table = jQuery('<table/>').append([jQuery('<td/>..... 

而且还可以简单地这样的:

jQuery.get(URL, function(result){jQuery('body').append(result);}....... 
+0

你可以使用模板引擎,然后你可以使用javascript – 2013-04-26 13:02:46

+2

你是什么意思的“更好”?你自己的成功标准是什么? – Pointy 2013-04-26 13:03:06

+0

对于表格示例,这取决于。它会是一个数据库查询?你的表格是否会应用脚本(可排序,数据表等)?有一个搜索?这些附加组件将会告诉你,如果你需要去服务器或ajax。我更喜欢客户端,因为您离开您的主机来处理查询和显示。而不是客户端的浏览器下载附加数据,然后处理并创建DOM元素。但是,如果表格具有搜索和分页功能,则最好使用ajax而不是强制您无限制地进行'*'查询。 – RaphaelDDL 2013-04-26 13:06:18

回答

0

真的是有没有人回答您的问题 - 这一切都取决于你的软件类型,预期的载荷等

清晰,动人“渲染”到客户端,将减少服务器和客户端之间传输的代码量,并且在生成html代码时使用更少的服务器资源(显然,我们正在谈论微型差异)。但是,如果您正在谈论成千上万的在线访问者,这可能变得非常重要。

但是,如果你有成千上万的访问者,你不会问这样的问题:)所以,我想,你应该格式化服务器端的所有东西,并无效地打扰这个问题。

0

没有对错之分。这一切都取决于最适合你的东西。我个人发现JSON是一个很好的多用途格式。你永远不应该做的是将数据作为HTML返回。尽量保持您的数据免于属于表示层的任何结构化。

有关详细信息,对Model-View-Controller

0

读这取决于结果的大小。结果很小,但没有什么区别。

但是,如果您要为表发送很多行,那么JSON响应将比实际的表html代码高效得多。

使用像@Arun P这样的模板引擎Johny在他的评论中说是处理JSON结果集的好方法。

检查下划线的模板http://underscorejs.org/#template

相关问题