我有一个div relatedListings,其中包含客户订单表。
我想在它上面添加一个标题,我尝试过h3,div和span但是它总是将元素放在表格下面。
生成表格的代码:
echo '<div id="relatedListings">
<h3 id="relatedListingsHeader">Customer\'s Listings</h3>' .
$account->listAds() .
'</div>';
执行后来自浏览器的实际来源:
<table id='customerAds'>
<!-- Generated table data -->
</table><div id="relatedListings">
<h3 id="relatedListingsHeader">Customer's Listings</h3></div>
请注意,在第二个片段中,div在表格之后。有什么想法吗?
编辑:这是listAds方法:
echo "<table id='customerAds'>
<tr><th>Ad</th><th>Title</th><th>Description</th><th>Ad Date</th><th>Actions</th></tr>";
while ($ad = $ads->fetch()) {
echo "<tr id='row_{$ad['idAds']}'>
<td>{$ad['idAds']}</td>
<td>{$ad['Title']}</td>
<td>" . substr(strip_tags($ad['Description']), 0, 100) . "...</td>
<td>" . format::dateConvert($ad['DatePosted'], 12) . "</td>
<td><a href='#'>Delete</a></td>
</tr>";
}
echo "</table>";
答案 0 :(得分:1)
我冒昧地猜测$ account-&gt; listAds()也是回声,而不是返回。如果你可以改变那个功能而不是你应该更好。
<强>更新强> 现在已经看到了你的更新代码 - 我建议让该函数返回一个字符串 - 而不是像你一样使用echo
$tableCode = "<table id='customerAds'>
<tr><th>Ad</th><th>Title</th><th>Description</th><th>Ad Date</th><th>Actions</th></tr>";
while ($ad = $ads->fetch()) {
$tableCode .= "<tr id='row_{$ad['idAds']}'>
<td>{$ad['idAds']}</td>
<td>{$ad['Title']}</td>
<td>" . substr(strip_tags($ad['Description']), 0, 100) . "...</td>
<td>" . format::dateConvert($ad['DatePosted'], 12) . "</td>
<td><a href='#'>Delete</a></td>
</tr>";
}
$tableCode .= "</table>";
return $tableCode;
答案 1 :(得分:0)
您生成的表格数据可能格式不正确,导致浏览器尝试将标记捏造成它认为您的意思。由于你没有包含该标记,我无法确定。查看$account->listAds()
。