2010-07-18 63 views
0

這裏是我的代碼:的jQuery DIV追加表兩次

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    ; "http://www.w3.org/TR/html4/loose.dtd"><html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <script type="text/javascript" src="jquery-1.4.2.min.js"></script> 
    </head> 
    <body> 
    <div id="divmenutable"></div> 
    <script type="text/javascript"> 
    $(document).ready(function() { 
    var menuTable = $("<table><table>").addClass("table_menu"); 
    var menuRow = $("<tr></tr>"); 
    var menuCol = $("<td>awef</td>"); 
    menuRow.append(menuCol); 
    menuTable.append(menuRow); 
    $("#divmenutable").append(menuTable); 
    }); 
    </script> 
    </body> 
</html> 

結果,DIV添加表兩次。我不知道爲什麼。我真正的代碼是使用'for'循環向表中添加數據。我最小化了我的代碼以顯示問題。

+0

要優化的東西,你可能想只是把所有的東西都menuTable選擇了正面的:var menuTable = $(「<表class ='table_menu'>​​awef「); – virstulte 2010-07-18 05:12:57

回答

5

您正在創建兩個表格。關閉結束標記。

$('<table><table>').length // 2 

對戰

$('<table></table>').length // 1 

也可以做

$('<table/>') 
+0

關於在jQuery中追加的一個很好的閱讀:http://www.learningjquery.com/2009/03/43439-reasons-to-use-append-correctly – gearsdigital 2010-07-18 05:09:34

+0

您的最後一個表不需要結束標記符號。 $('

')在jQuery中使用花花公子。 – 2010-07-18 06:44:22