用于非 JSON 输出的 drupal_json 的任何替代方案
在 drupal 中的 AJAX 回调中,通常建议使用 drupal_json() 将数据发送到客户端。该函数将原始数据转换为 JSON 以及 HTML 编码。
我想将不经过编码的 HTML 数据发送给客户端。 为此,我使用以下代码:
print $html_output;
exit(0);
drupal 中是否有任何推荐或最佳方法可以做到这一点?
In an AJAX call back in drupal it is normally recommended to use drupal_json() to send data to client. This function converts the raw data into JSON along with HTML encoding.
I want to send the HTML data without encoding to client.
for this I am using following code:
print $html_output;
exit(0);
Is there any recommended or best way in drupal to do so?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您只需要输出从菜单回调返回的 HTML 输出,那么以下代码是正确的:
如果您希望输出与 Drupal 正常输出的块一起出现,则需要将代码更改为以下代码:
If you need to output only the HTML output returned from the menu callback, then the following code is the correct one:
If you want your output to appear together the blocks Drupal normally output, then the code needs to be changed to the following:
这样就可以了。尽管您应该首先调用 hook_exit 。然而,这在某种程度上简化了框架,它可能在简单的情况下工作,但不适用于表单等。
我唯一一次使用此方法是如果我打印一些已准备好 json 编码的数据。
That will do the trick. Allthough you should invoke hook_exit first. However this is shortcutting the framework some what, it may work in simple cases but wont work for forms etc.
The only time I have used this method is if I am printing some data which is allready json encoded.