我正在尝试遍历TR:Img并发现TR是否有类,但我收到此错误:
错误:语法错误,无法识别的表达式:
HTML:
<tr id="ItemDetail:0:parent">
<td>
<a id="itemDetail:0:linkShowHide"
name="itemDetail:0:linkShowHide"
href="javascript:toggleRow('itemDetail:0')">
<img class="showDetail" id="itemDetail:0:Img" src="/s.gif"></a>
</td>
</tr>
Jquery的:
$("[id*='parent']':Img'").each(function(){
var x = $(this);
if(x.hasClass("showDetail"))
{
alert('gotit');
}
})
答案 0 :(得分:3)
错误:语法错误,无法识别的表达式:
你得到这个,因为选择器无效..
更改此选择器语法
$("[id*='parent']':Img'")
要
$("[id*='parent'] img")
请注意id
选择器和img
之间的空格。在选择器之间使用空格来指定父子关系(对于任何级别的深度)。
上面的选择器意味着......找到位于img
包含父级的parenrt元素的任何级别内的id
元素。
感谢 Matt Browne ,他在下面的评论中指出了这一点。
此外,如果您的目的是仅获取img
的{{1}}标记,则将其添加到选择器中。你可以消除里面的If检查..
showDetail
这将只为您提供具有指定类的$("[id*='parent'] img.showDetail")
标记..
希望这有帮助。