我有一个Ajax请求,它调用" get_suggestion_table.php"。这个php文件的工作是创建一个HTML表体。创建此表的最漂亮的方法是使用多个echo
行,因为我有每个<tr></tr>
元素的foreach。不幸的是,ajax成功函数只能使用我的php文件的第一个echo。
因此我想知道如何正确归还整个桌子。用一个回声返回所有东西的唯一方法是什么? (Aka构建一个大字符串,其中包括我在php文件中创建的整个表,然后回显此字符串?)。
我的get_suggestion_table.php:
echo "<tbody>";
foreach($suggestedSentences as $suggestion)
{
?>
<tr lang="de" dir="ltr" id="sugg-cont-<?echo $suggestion["sugg_id"];?>">
<td id="sugg-block-<?echo $suggestion["sugg_id"];?>" <?if($suggestion["sugg_id"] == $sugg_id) echo 'class="mytranslation"';?>>
<div class="actionbuttons">
<ul class="actions compact">
<li id="approve-sugg-<?echo $suggestion["sugg_id"];?>" class="alert-success">
<a class="vote up" data-original-title="Approve" href="javascript:void(0);" onclick="send_vote(this, '<?echo $suggestion["sugg_id"];?>', 1)">
<span>Up</span></a>
</li>
<li><a class="vote down" data-original-title="Reject" href="javascript:void(0);" onclick="send_vote(this, '<?echo $suggestion["sugg_id"];?>', -1)"><span>Down</span></a>
</li>
</ul>
</div>
<div class="translation suggestions_compact-suggestion_text" lang="de" dir="ltr"><?echo $suggestion["message"];?></div>
</td>
</tr>
<?}
echo "</tbody>";
我的Ajax请求:
// Replace suggestiontable
var get_suggestion_table = $.post( "/assets/get_suggestion_table.php", { suggestion_id: sugg_id, original_id: unit_id });
get_suggestion_table.done(function (data) {
$(replace_node).html(data);
});
答案 0 :(得分:1)
尝试添加html的数据类型:
$.post( "/assets/get_suggestion_table.php", { suggestion_id: sugg_id, original_id: unit_id },function (data) {
$(replace_node).html(data);
},'html');