+ -
当前位置:首页 → 问答吧 → 如何获取父节点

如何获取父节点

时间:2009-07-21

来源:互联网

<h1>湖北</h1>
<table>
<tr>
<td>
<input type=radio name=radio value=武汉 />
<input type=radio name=radio value=宜昌 />
</td>
</tr>
</tale>
<h1>上海</h1>
<input type=radio name=radio value=上海 />
<h1>北京</h1>
<input type=radio name=radio value=北京 />

请教如何获取“武汉”的上级节点“湖北”?
$("input[name=radio][type=radio][value=北京]").parent("h1")
这样可以获取<h1>北京</h1>

但是$("input[name=radio][type=radio][value=武汉]").parent("h1")
却无法获取<h1>湖北</h1>,求教如何获取?

作者: 屹砾   发布时间: 2009-07-21

而且 $("input[name=radio][type=radio][value=武汉]").closest("h1") 也不行

作者: 屹砾   发布时间: 2009-07-21

你所说的根本不是父结点,而是自己或父结点的兄弟结点

$(':radio[value=武汉]').parent('table').prev('h1')

如果要通用的话,大概是这样:
var city = '武汉';
$(':radio[value=' + city + ']').parent('table').andSelf().prev('h1'); //这里得保证没有更外层的table,否则还得改改

此外想说的是你的xhtml不规范,属性值都没写引号,一个网页也不建议使用1个以上的h1,如果省市很多,建议你使用h3

作者: keakon   发布时间: 2009-07-21

谢谢LS,如果这样,那这应该是页面的设计问题了。jQuery也无法面面具到的。

作者: 屹砾   发布时间: 2009-07-22

相关阅读 更多