我有以下代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<table>
<tbody>
<?php echo $header; ?>
<?php
for ($i=1; $i<=14; $i++)
{
echo "
<tr id=\"rq". $i. "\">
<td class='qnum'>". $i . ".</td>
<td class='qtext'>". $q[$i] . "</td>
<td style='width:20px;'></td>";
echo" <td colspan=2><div id='slider_". $i . "' class='shown' name='slider' style='width:374px;height:10px;display:block;background:white;border:1px solid #B3C6FF'></div></td>";
echo" <td style='width:20px;'></td></tr>";
}?>
</tbody>
</table>
当我去验证代码时,我收到以下错误:
未完成的“tbody”的结束标记
有什么想法吗?
答案 0 :(得分:1)
您已经使用PHP编写了一个软件。当您运行该软件时,它将输出一些XHTML。
您需要验证XHTML,而不是PHP源代码。
tbody未完成,因为所有表行都是由PHP输出的。虽然PHP源代码中包含标记,但它们位于PI内部,因此不会被视为标记。
答案 1 :(得分:0)
确保您不验证PHP,而是通过PHP验证HTML代码生成的。此外,请确保PHP生成的代码有效,因为没有未关闭的标记,未封闭的引号。如果没有给我们PHP代码生成的确切HTML,就无法确定问题的确切解决方法,因为我们不知道$header
的内容是什么,为您举个例子。因此,如果您需要更多信息,请编辑您的问题并添加生成的HTML代码,但我的建议应该足以让您修复错误。干杯!