我希望能够选择下一行的div(它不是子div或父div)更像是兄弟姐妹。然后我想从该div获取node_id并解析它。例如,下面我知道第一个的“NODE_ID”,所以我可以使用jquery选择器来获取node_ID,然后我想直接移动到那个DIV下面并检索那个DOD的NODE_ID,但我不知道ID或Node_id,所以我必须能够在没有选择器id的情况下到达下一个DIV ...在这种情况下,我想检索node_id值“74_3”并解析它。
这是HTML:
<div style="display: block;" id="71_2_sub_p_div" node_id="72_2">
<span class="a_hand">
<img src="../images/maximize.png"> Commercial
</span>
</div>
<div style="display: block;" id="71_3_sub_p_div" node_id="74_3">
<span onclick="toggle_display('75_4_sub_p_div');" class="a_hand">
<img src="../images/maximize.png"> Apartments
</span>
</div>
这是我用来获取已知NODE_ID的选择器:
$("div[node_id='72_2']")
我怎样才能在jquery中这样做?提前谢谢。
答案 0 :(得分:6)
如果div是下一个兄弟,您可以使用.next()
$('div[node_id=72_2]').next(); // should be div#71_3_sub_p_div
$('div[node_id=72_2]').next().attr('node_id'); // should be '74_3'
如果还有其他兄弟姐妹,并且您只想找到<div node_id='...'>
,那么您可能会变得更复杂一些:
$('div[node_id=72_2]').nextAll('div[node_id]').eq(0).attr('node_id')
// also '74_3'
查看所有下一个使用node_id属性查找div的兄弟姐妹,使用.eq()
将匹配减少到单个项目,然后返回它的node_id属性。