2014-09-26 76 views
0

我正在研究一個e-commerce website,其中包含以下大量無效的HTML標記。這是一個託管的電子商務應用程序,我無法訪問其源。我只能編輯一個模板文件,但無法訪問生成實際表格的位置。刪除重複</td> jQuery中的結束標記

<table> 
    <tr> 
     <td></td></td> 
    </tr> 
    <tr> 
     <td></td></td> 
    </tr> 
    <tr> 
     <td></td></td> 
    </tr> 
</table> 

什麼是去除「重複」的最佳方式關閉</td>標籤?

+0

最好的方法是找到重複的''來自哪裏並將其刪除。什麼代碼生成表格? – 2014-09-26 19:21:29

+3

將它從源代碼中移除,而不是使用jQuery。 – j08691 2014-09-26 19:21:40

+2

jQuery是一個用JavaScript編寫的DOM操作庫。它在標記解析並加載到內存並呈現後處理DOM。在這個時候,不會有額外的結束標籤 - 瀏覽器將會處理它。如果你想在插入到DOM之前將它們從HTML字符串中移除,那麼最好問你是否用「JavaScript」替換了「jQuery」並明確表示這是你想要的。但最後,你不想在JS中處理這個問題,我向你保證。修復源代碼。 – JAAulde 2014-09-26 19:23:48

回答

1

如果你必須這樣做與jQuery,這個插件會爲你做它:https://code.google.com/p/jquery-clean/

如果通過demo page運行示例代碼,這一點:

<table> 
    <tr> 
     <td></td></td> 
    </tr> 
    <tr> 
     <td></td></td> 
    </tr> 
    <tr> 
     <td></td></td> 
    </tr> 
</table> 

變爲:

<table> 
    <tr> 
     <td> 
     </td> 
    </tr> 
    <tr> 
     <td> 
     </td> 
    </tr> 
    <tr> 
     <td> 
     </td> 
    </tr> 
</table> 
0

jQuery不會僅刪除這樣的結束標籤。順便說一下,大多數瀏覽器都會自動修正關閉標籤。

如果您確實需要刪除,您必須直接從源代碼手動刪除這些不必要的代碼。

+0

我添加了一些評論,以解釋爲什麼我不能訪問生成表的源代碼;因此訴諸於Javascript。 – farjam 2014-09-26 19:32:56