我試圖用jQuery將一系列HTML無序列表更改爲表。使用jquery的第n個子選擇器的語法錯誤
這是HTML的樣子:
<div class="FindByCategory">
<ul>
<li>list item</li>
<li>list item</li>
</ul>
<ul>
<li>list item</li>
</ul>
<ul>
<li>list item</li>
<li>list item</li>
</ul>
</div>
我想變成的東西,看起來像:
<div class="FindByCategory">
<table>
<tr>
<td>list item</td>
<td>list item</td>
</tr>
<tr>
<td>list item</td>
<td>list item</td>
</tr>
<tr>
<td>list item</td>
<td>list item</td>
</tr>
</div>
我使用的方法是創建並填充先列表,然後隱藏無序列表。我遇到的問題是使用nth:child選擇器。我在控制檯上收到錯誤消息「Syntax error,unrecognized expression:ul:nth-child」。該頁面使用jQuery 1.6.4
這裏是我的代碼:
$('.FindByCategory').prepend('<table />');
var numberOfRows = $('.FindByCategory ul').length;
for(var i=0; i <= numberOfRows ; i++){
$('.FindByCategory table').append('<tr>');
var numberOfColumns = $('.FindByCategory ul:nth-child(i) li').length;
for(var j = 0; j<= numberOfRows ; j++){
var liHTMLContents = $('.FindByCategory ul:nth-child(i+1) li:nth-child(j+1)').text();
$('.FindByCategory table tr:nth-child(i+1)').append('<td>' + liHTMLContents + '</td>');
}
}