我从AJAX调用中获取了一些XML(毫不奇怪),我想做一些事情,但只在某些节点上做其他事情.例如
<xml>
<node name="x">
</node>
<node name="x">
</node>
<node name="y">
</node>
<node name="z">
</node>
</xml>
Run Code Online (Sandbox Code Playgroud)
我希望名称为x的所有节点都转到一个表,我希望所有其他节点转到另一个表.
Mar*_*ers 19
使用属性过滤器,特别是attributeEquals过滤器:
$("node[name='x']");
Run Code Online (Sandbox Code Playgroud)
要选择所有其他节点,请使用attributeNotEquals过滤器:
$("node[name!='x']");
Run Code Online (Sandbox Code Playgroud)
然后,您可以应用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
}
}
}
Run Code Online (Sandbox Code Playgroud)