javascript - Jquery AJAX 返回原始数据还是现成的 HTML?

标签 javascript jquery html ajax

我正在使用 Jquery mobile 构建移动应用程序。我需要从 API 请求一些数据并在应用程序内显示。

现在我有两个选择:

  1. 我的 API 返回 Json,我需要一些 Javascript 将其格式化为 显示在我的应用程序中(它是一个列表,所以我会循环它并 追加到列表中)

  2. 我的 API 返回现成的 HTML,我只需要将其包含在一些内容中 容器。对于这种情况,我找到了这个方法:$( "#result" ).load("ajax/test.html" );

哪一种是最佳实践以及您如何实现它

最佳答案

我确实见过这两种方式。以下是一些您可以考虑的“明确规则”建议。

(1) 如果内容将被应用程序视为“黑匣子”...“别看,我们不必与它交互,我们所做的一切这里需要做的是显示它,无论它是什么”......那么让服务器为您完成所有工作可能是完全合适的。 (特别是如果有多种可能性,“服务器最了解”“应用程序真的不必在意。”)希望避免在应用程序和服务器之间创建不必要的依赖关系或重复。

但是...

(2) 如果内容是应用程序必须与之交互的内容,和/或需要“样式”或类似内容,那么应用程序中的逻辑>app 可能应该这样做。您希望避免在服务器和应用程序之间创建不必要的依赖关系或重复。 (请注意本段中“服务器”和“应用程序”这两个词是如何颠倒的。)

这个概念有时被称为“关注点分离”。如果无论是什么“服务器更关心而不是应用程序”,并且“应用程序可以承受‘不关心’”,那么服务器可以移交既成事实.否则,它可能应该向您提供数据。

无论如何:“这是工程师的工程判断要求,需要做出并捍卫。”

关于javascript - Jquery AJAX 返回原始数据还是现成的 HTML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31149820/

相关文章:

javascript - 用js设置不透明度或关闭模态窗口

javascript - 使用 jquery 从类中获取 css 属性

javascript - 无法将 DIV 设置为等于另一个 DIV HTML/Javascript

html - 背景重复对 FF 42 的奇怪影响

javascript - 设置全局 ajax 数据类型会破坏 rails 远程链接

javascript - 我找不到 javascript 代码在哪里

javascript - 为什么在 javascript 中不调用覆盖的 toString()

javascript - 为什么我会收到 self.description(...) is undefined ?

javascript - 如何滚动到可滚动 div 中的元素?

javascript - onsubmit validateForm 函数不起作用