php - 在 JS 处理程序或 PHP ajax 函数中为 ajax 函数生成 html 更好吗?

标签 php ajax design-patterns jquery

我正在为产品设计一些 UI,我们想使用 jQuery 和 PHP。要生成的内容是用户将修改的复选框列表 (10-100)(一次删除多个并更改条目)。我想我会尝试一些新的东西并询问 StackOverflow(阅读:你)什么是首选:在 php 调用中生成 html 并返回,或者返回 jQuery 可以生成 html 复选框的 JSON 数据。

感谢您的反馈!到目前为止,我首选的方法是让 PHP 生成 html,因为它在修改时更了解数据(它与数据库交互,它可以很容易地构建 html,而不必在 JSON 中传回 id、名称等) .

谢谢!

[编辑] 带宽不是约束。这是一个内部 Intranet 应用程序。需要打印给用户的信息不需要在事后进行 dom 修改(在复选框之外,但内置于浏览器中......)虽然在传回的数据量上有一些优点:

回传

标签

对比 { “标签”:“Unique_ID”

显然有很多冗余。

最佳答案

确实没有正确/错误的方法可以做到这一点。传回 JSON,然后使用客户端处理将其转换为 HTML 使用更少的带宽,但更多的本地处理能力。传回 HTML,使用更多的带宽和更少的本地处理(这些都是严重的次要问题,只有当你谈论的是非常流行或经常变化的网站时,它才可能是相关的)。

返回灵 active - HTML

HTML 传递的一个好处是,如果请求导致错误,您可以返回任何内容,或者可以生成不同类型的数据,您只需返回不同的 HTML。如果您要返回 JSON,解析脚本必须处理这些替代结构(即错误处理和/或多结构解析算法)。

本地处理 - JSON

如果您要从用户的角度对数据进行本地化、排序或构建,返回 JSON 然后使用客户端脚本进行解释可能会更简单。例如,当 user=2 时,报告“你”而不是“迈克”可能是一种很好的个性化方式。您可以在服务器端执行此操作,但现在脚本需要考虑到这一点,因此相同的查询需要根据上下文返回不同的数据(同样并非不可能)。您可以使用客户端脚本来执行此操作,从而使您的服务器代码更加通用。

本地呈现 - JSON

也许单个命令可以收集数据,但是页面的多个部分应该用返回的内容进行更新。使用 HTML 方法,您要么需要单独的查询,要么需要返回中的某种定界符(带转义符!),以及一个本地处理脚本来决定什么去哪里......使用 JSON 方法,本地处理脚本可以更新来自与检索到的相同单一来源的位置。

关于php - 在 JS 处理程序或 PHP ajax 函数中为 ajax 函数生成 html 更好吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3936298/

相关文章:

php - CakePhp 中的 unbindModel 调用。它是如何工作的?

javascript - 如何在 Codeigniter 中创建 API?

javascript - 使用php脚本定期检查LAMP服务器主页时返回奇怪的Javascript

php - Javascript Ajax 页面在一段时间后开始响应缓慢?

java - jquery是否可以同时提交表单并发送ajax请求

java - IntelliJ 可以自动创建装饰器类吗?

windows - 在哪里可以找到 Windows 应用程序的用户界面 (UI) 设计模式?

php - 返回各种数据类型的函数

javascript - 无法在 session 数组中存储ajax变量

c++ - C++ 中的变量全局常量 "macros"和最佳设计模式