在我的html结构中,我有像这样排列的table和div标签
<table>...</table>
<div>...</div>
<table>...</table>
<div>...</div>
<table>...</table>
<div>...</div>
etc...
这是asp.net树视图结构。我想遍历所有节点和子节点。 (table是节点,紧接着出现的div是该节点的子节点)
我可以通过执行此$('#treeviewid > table')
遍历所有表标记,这会获得该级别上的节点,但是对于当前表标记,我如何获得紧跟在其后面的div标记,以及如何我可以检查它是否存在,因为该节点可能没有任何子节点。
感谢。
答案 0 :(得分:2)
$('table')[2].next('div');
答案 1 :(得分:1)
如何才能获得正确的div标签?
使用.next()
$('#treeviewid > table').eq(1).next('div');
如何检查它是否存在?
使用.length()
if($('#treeviewid > table').eq(1).next('div').length > 0){
}
答案 2 :(得分:0)
$('#treeviewid > table').eq(0).next()
答案 3 :(得分:0)
下一个相邻选择器(“prev + next”)
jQuery(“prev + next”)
prev:任何有效的选择器。 next:用于匹配第一个选择器旁边元素的选择器。
在主题案例中:
答案 4 :(得分:0)
看看这个小提琴:visit, or see static fixture below:
您的加价:
<table class="i1">...</table>
<div>1</div>
<table class="i2">...</table>
<!--<div>1</div>-->
<table class="i3">...</table>
<div>3</div>
找到div的代码:
var divsAfter = $('table.i2').next('div'); // a scenario when the second table is taken
alert(divsAfter.length); // 0, if no 'div' follows
if (divsAfter.length) {
alert(divsAfter.text());
}