我不知道如何通过AJAX正确返回HTML。
我有这个惯例
function DisplayEventInfoBox()
{ ?>
<div id="eventInfo">
<div class="avail-from cart-right">
<?php
and so on...
}
如果我在一个AJAX调用中包含这个,并且例程的结尾是die(),那么响应对象包含HTML,我可以随意使用它。
function myAJAXFn() {
DisplayEventInfoBox($my_page, $shipHelper);
die();
}
我想发送其他信息,例如使用wp\\u send\\u json\\u success或其他变量。
这段代码返回HTML,并将JSON数组附加到末尾。我想创建一个JSON对象,在这里我可以访问我的页面属性和html。最好的方法是什么?
function myAJAXFn() {
DisplayEventInfoBox($my_page, $shipHelper);
wp_send_json_success( array(\'page\'=>$myPage) );
}
最合适的回答,由SO网友:czerspalace 整理而成
我不知道$my\\u page、$my\\u page或$shipHelper变量应该做什么,但您可以使用输出缓冲区来捕获DisplayEventInfoBox函数的输出。您可以尝试以下操作:
function myAJAXFn() {
ob_start();
DisplayEventInfoBox($my_page, $shipHelper);
$my_html = ob_get_contents();
ob_end_clean();
wp_send_json_success( array(\'page\'=>$my_html) );
}