0
我想根据多个参数筛选XML,并将其作为输入。基于多个参数过滤XML - Flex
我想识别具有匹配记录的父节点,以便我可以将它们过滤出来并进行处理。
<A>
<B1>
<C1>
<D1>111</D1>
<E1>111</E1>
<F1>
<G1>111</G1>
<H1>
<I1>111</I1>
<J1>111</J1>
</H1>
</F1>
</C1>
</B1>
<B1>
<C1>
<D1>222</D1>
<E1>333</E1>
<F1>
<G1>222</G1>
<H1>
<I1>222</I1>
<J1>222</J1>
</H1>
</F1>
</C1>
</B1>
<B1>
<C1>
<D1>333</D1>
<E1>333</E1>
<F1>
<G1>333</G1>
<H1>
<I1>333</I1>
<J1>333</J1>
</H1>
</F1>
</C1>
</B1>
</A>
可以说,我需要匹配的节点D1和E1和I1,但如果所有的参数a“和”比赛,我需要从<B1>
的结果节点权利。
<B1>
<C1>
<D1>222</D1>
<E1>333</E1>
<F1>
<G1>222</G1>
<H1>
<I1>222</I1>
<J1>222</J1>
</H1>
</F1>
</C1>
</B1>
我想USNG以下组合,以获得数据:
xml..*.((hasOwnProperty("D1") && D1 == "222")&&hasOwnProperty("E1") && D1 == "333"))
但认为有一定的差距。有人可以填写并告诉我我错在哪里,或者有更好的方法来过滤XML吗? 另外,有没有哪些filterFunction(集合)可以帮忙?
哦,那很干净。 – Bob 2012-02-07 21:37:03
解决了它,谢谢。 – Bob 2012-02-07 22:27:35
我正在尝试动态创建查询部分,以便参数和密钥接管构建标准部分。只是为了显示: 'var q1:String =“descendants(\”E1“)== \”111 \“)”;'//动态查询构建,这只是为了演示。 'Alert.show(“Query >>”+ q1.toString()); //输出:后代(“E1”)==“111” \t \t 'var r2:XMLList = xmlData .. *。(descendants(“E1”)==“111”); //给出正确的回答# 'var r1:XMLList = xmlData .. *。(q1.toString()); //给出奇怪的回应,不会过滤掉任何东西。' **这里是缺少的东西还是这个错误的方法** – Bob 2012-02-07 22:34:44