用HTML作为AJAX调用的结果(优缺点)

6

关于在 AJAX 调用中将 HTML 代码作为结果返回,您有什么看法(优点和缺点)?具体而言,如果应用程序需要在列表中创建新项目并且需要一些额外的参数或某些模式定制,则可以通过 AJAX 调用将其模板化而不是通过 JS 进行修改。

问题在于 HTML 片段从服务器发送到客户端计算机并集成到文档 DOM 中。这种方法是否存在任何问题?


1
有趣的问题,很好奇是否通过AJAX发送原始文本并在客户端上使用JS进行所有格式化/标记生成比仅将整个XML块发送到网络并将其添加到DOM中更快。无论哪种方式,我都怀疑没有太大的区别。 - chrisfrancis27
3个回答

6
没有任何问题,这是非常正常和合理的做法。
有时候,发送数据而不是标记并在客户端模板中扩展它确实有用,但这主要是针对您发送大量数据并希望将其大小保持在线路上的情况。 (例如,一个大表格,其中HTML表示形式为100k,但原始数据以JSON格式仅为10k。)或者当模板因客户端条件而异时。 但总体而言,将HTML发送到通过innerHTML(或任何几个库的包装器,可帮助您解决奇怪的小问题)将其合并到DOM中是完全可以的。

4

这是一种常见的方法。

如果您要向列表中添加项目或将pod的内容替换为完全不同的内容,则可以使用此方法。

这也使得将AJAX应用于现有站点更加容易(例如叠加层或其他内容),因为您可以对现有页面进行请求,然后剥离掉不需要的部分。

但是,如果只有一个值正在更改,则最好使用Json进行更新。


2

个人而言,我几乎总是选择接收没有应用标记或格式的 JSON 响应,但这只是因为我喜欢拥有一个非常灵活、细粒度的响应,以便我可以对返回的数据做任何想做的事情,而不必可能将其从 HTML 中剥离。在很多情况下,这并不一定是最简单或最优雅的解决方案!:)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接