2013-10-13 42 views
-1

我有以下代碼:<tbody>導致驗證問題

<!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> 

當我去驗證碼我收到以下錯誤:

end tag for "tbody" which is not finished

任何想法?

回答

1

您已經使用PHP編寫了一個軟件。當你運行這個軟件時,它會輸出一些XHTML。

您需要驗證XHTML,而不是PHP源代碼。

因爲所有的錶行都是由PHP輸出的,tbody還沒有完成。雖然PHP源代碼中有標籤,但它們位於PI內部,因此不會被視爲標籤。

+0

你,先生,是一個聖人:-)我希望OP已經做了exacly :-) –

+0

@Jan - 感謝您的答覆。我正在使用WS3C驗證服務(包括XHTML),這是唯一沒有驗證的事情。這與PHP無關,因爲它正在吐出簡單的文本。因此我的困惑。 –

+0

@Homer_J - 什麼是「WS3C驗證服務」?您是否將W3School(可怕的教程網站)與W3C(標準機構)混爲一談?如果你驗證在問題中運行PHP的結果,那麼沒有提到'tbody'的錯誤。如果你嘗試驗證PHP本身,那麼你確實得到了你所描述的錯誤。您要麼向我們展示錯誤的源代碼,要麼您錯誤地驗證輸出而不是PHP源代碼。 – Quentin

0

確保您不驗證您的PHP,您驗證了PHP代碼生成的而不是PHP。另外,請確保由PHP生成的代碼有效,因爲沒有未關閉的標籤和未關閉的引號。如果沒有您向我們提供由您的PHP代碼生成的確切HTML,我們不知道您的問題的確切解決方案,因爲我們不知道$header的內容是什麼,以舉例說明。因此,如果您需要更多信息,請編輯您的問題並添加生成的HTML代碼,但我的建議應該足以讓您修復錯誤。乾杯!

+0

感謝 - 讚賞 - 將重新調查。 –