1
说,我们有以下的XML:E4X可以传递数组吗?
<people>
<person>
<name>Jake</name>
<skills>
<skill>JavaScript</skill>
<skill>HTML</skill>
<skill>Flex</skill>
<skill>CSS</skill>
</skills>
</person>
<person>
<name>John</name>
<skills>
<skill>C++</skill>
<skill>Foxpro</skill>
</skills>
</person>
<person>
<name>Josh</name>
<skills>
<skill>JavaScript</skill>
<skill>XML</skill>
<skill>Flex</skill>
</skills>
</person>
</people>
我希望能够使用E4X做的是找到匹配的技能列表/阵列我通过它,所有的人对象。所以,说我想找到所有具有HTML或JavaScript技能的人。
我知道我可以做:
people.person.(descendants("skill").contains("HTML"))
或
people.person.(descendants("skill").contains("JavaScript"))
但我真的想(/需要)做一条线(Flex中的XMLListCollection过滤功能的它的一部分)。虽然我试图就这一主题变化和无处
像这样的事情将是理想的
people.person.(descendants("skill").contains("HTML","JavaScript"))
。什么会是伟大的将是:
people.person.(descendants("skill").in("HTML", "JavaScript"))
或类似的东西。
有人知道我在做什么是可能的吗?
我真的想避免在那里添加我自己的循环。
杰克
再次尼科。你是E4X专家? 麻烦的是我想传递一个实际的数组对象而不是两个已知的值。 杰克 – 2009-09-30 10:04:23
不是专家,但让我们说我喜欢解决这些问题。 ;) – 2009-10-04 12:23:24
我想你是对的。我只是想避免循环,而不是避免它们。 再次感谢您的解决方案。如果我能够解决问题,我会和代码一起玩,并将其标记为答案。 – 2009-10-05 08:20:28