【问题标题】:return HTML from ajax request从 ajax 请求返回 HTML
【发布时间】:2015-12-22 00:33:08
【问题描述】:

如何从 ajax 调用中正确返回 html?我目前在 json 中返回 html,但是有没有更好的方法来处理这个?例如,如何处理错误和缺少的参数。 ajax 请求是否应该始终返回 JSON?

<?=json_encode(array('html' => $res))?>

【问题讨论】:

  • 返回HTML就可以了,就这么简单!
  • 是的,但我也想处理错误。
  • 只返回适当的 HTTP 错误代码(例如 400 bad request for missing arguments)。
  • 我已经准确地看到了您正在使用的结构,并带有更多的“上下文”,因此它更有意义:json_encode(array('results' =&gt; 'success', 'html' =&gt; $res, 'error' =&gt; false))。这样,您将始终返回结果,并且您有空间用于错误消息(如果需要,'error' 也可以包含错误消息)
  • 您可以使用不同的错误代码来表示不同的错误(例如,如果您未登录,则为 401 未授权)。如果您需要非常结构化的数据,但您可能应该坚持返回一致的 JSON。

标签: php json ajax rest


【解决方案1】:

我建议您使用 HandleBars (http://handlebarsjs.com/) 或其他客户端模板引擎将 JSON 呈现为 HTML。

那么您的 JSON 将只包含数据。它将呈现为 HTML,并由 CSS 控制呈现。

【讨论】:

  • 谢谢,但我不想使用模板引擎。
猜你喜欢
  • 1970-01-01
  • 2013-11-29
  • 2012-05-16
  • 1970-01-01
  • 2021-10-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-19
相关资源
最近更新 更多