我有一个由 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 ,这会妨碍我的工作。我事先不知道 namespace ,也不关心它们是什么。
有没有办法提前去除所有的命名空间?有更好的方法吗?
谢谢!
最佳答案
在 E4X 中,您可以对命名空间前缀使用通配符。因此,如果您将 node1.node2.node3
转换为 *::node1.*::node2.*::node3
您的 eval
将匹配,忽略 namespace 。
关于javascript - 如何使用 e4x 去除 namespace ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2511427/