我有一个URL提供的任意XML文档。我也有类似xpath的表达式。

var xml = <doc><node1><node2><node3>some value</node3></node2></node1></doc>;
var path = "node1.node2.node3";

我需要验证上述XML路径是否有效。我尝试使用eval和E4X进行此操作。
var value = eval("xml."+path);

但是,我实际的xml文档中有一些 namespace 正在妨碍您。我不知道命名空间是什么时候,也不在乎它们是什么。

有没有办法提前剥离所有命名空间?有一个更好的方法吗?

谢谢!

最佳答案

在E4X中,可以对 namespace 前缀使用通配符。因此,如果将node1.node2.node3转换为*::node1.*::node2.*::node3,则eval将匹配,而忽略 namespace 。

关于javascript - 如何使用e4x剥离 namespace ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2511427/

10-09 03:54