Jquery'的第n个子选择器语法错误
Syntax error with Jquery's nth-child selector
我正在尝试使用jquery将一系列HTML无序列表更改为表。
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>
我使用的方法是先创建并填充表,然后隐藏无序列表。我遇到的问题是with第n个子选择器。我在控制台上得到一个错误消息"语法错误,无法识别的表达式:ul:n -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>');
}
}
您可能想使用i
的值,而不是字符串"i"
:
var numberOfColumns = $('.FindByCategory ul:nth-child('+i+') li').length;
以下
$('.FindByCategory ul:nth-child(i) li').length;
应该$('.FindByCategory ul:nth-child(' + i + ') li').length;
你需要这样的东西
$('.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>');
}
相关文章:
- 未捕获的语法错误:无法在“文档”上执行“查询选择器”
- jQuery 选择器中的简单 jQuery 语法和串联
- 属性选择器不起作用(语法错误、无法识别的表达式)
- Jquery语法错误,id选择器上的表达式无法识别
- 有效的jQuery选择器语法
- 未捕获错误:语法错误,无法识别表达式Jquery选择器单引号与双引号
- WebRTC文件传输和语法查询选择器
- j查询选择器变量语法纠错
- 使用类似 JQuery 的选择器语法以编程方式编辑 Less (css) 代码
- 点击事件选择器语法
- Jquery 选择器不工作:错误:语法错误,无法识别的表达式:a[@href]
- 不选择器和哈希符号语法错误
- Jquery'的第n个子选择器语法错误
- 在JQuery中为select-option-selected编写ID选择器的正确语法是什么?
- 为什么这个jquery选择器给我错误?未捕获异常:语法错误,无法识别的表达式:''
- 用于多个元素/选择器的字符语法
- JQuery CSS选择器语法错误
- 语法错误,无法识别的表达式:,$(选择器).在(“,”);之前;
- JavaScript颜色选择器使用CSS语法I'I’我不熟悉
- Dojo选择器语法- Dojo中的IE错误