2

在 drupal 中的 AJAX 回调中,通常建议使用 drupal_json() 将数据发送到客户端。此函数将原始数据与 HTML 编码一起转换为 JSON。

我想将不编码的 HTML 数据发送给客户端。为此,我使用以下代码:

print $html_output;
exit(0);

在drupal中有什么推荐或最好的方法吗?

4

2 回答 2

2

那会成功的。尽管您应该先调用 hook_exit。然而,这在某种程度上缩短了框架,它可能在简单的情况下工作,但不适用于表单等。

我唯一一次使用这种方法是如果我打印一些已经是 json 编码的数据。

于 2010-08-05T11:17:52.993 回答
2

如果只需要输出菜单回调返回的 HTML 输出,那么下面的代码是正确的:

print $html_output;
module_invoke_all('exit');
exit();

如果您希望您的输出与 Drupal 正常输出的块一起出现,则需要将代码更改为以下内容:

return $html_output;
于 2010-08-07T06:29:36.097 回答