我从AJAX调用中获取一些XML(不意外),我想对某些节点执行某些操作,而对其余节点执行其他操作。例如:
<xml>
<node name="x">
</node>
<node name="x">
</node>
<node name="y">
</node>
<node name="z">
</node>
</xml>
我希望所有名称为x的节点都放在一个表中,而其他节点则放在另一个表中。
$("node[name='x']");
要选择所有其他节点,请使用attributeNotEquals过滤器:
$("node[name!='x']");
您可以使用jQuery 操作来移动这些节点。
请注意,XPath样式选择器在版本1.2中已被弃用,并在jQuery 1.3中完全删除。
如果您可以影响服务器发送的内容,建议改用JSON,因为它更容易解析。
success: function(xml) {
$(xml.find('node').each(function(){
if($(this).attr('name')=='x') {
//go to one table
} else {
//go to another table
}
}
}
jQuery同样接受xpath表达式。
$('node[name="x"]')
将选择所有名为"node"且具有属性"name"且值为"x"的节点。