XML节点:添加具有命名空间的属性
XML node: add an attribute with a namespace
我正在尝试将属性添加到xml节点中。我创建了以下功能
function AddAttribute(xmlNode, attrname, attrvalue, path) {
var attr;
if (isIE())
attr = xmlNode.ownerDocument.createNode(2, attrname, "http://mydomain/MyNameSpace");
else
attr = xmlNode.ownerDocument.createAttributeNS("http://mydomain/MyNameSpace", attrname);
attr.nodeValue = attrvalue;
var n = xmlNode.selectSingleNode(path);
n.setAttributeNode(attr);
}
此代码在Firefox中不起作用。它添加了节点,但没有添加命名空间。我试过IE和Chrome,效果很好。
你知道我该如何添加命名空间吗?或者,您知道创建具有名称空间的属性的其他选择吗?
感谢
我找到了一个可能的解决方案。至少它现在适用于三种浏览器:IE、Firefox和Chrome。
function AddAttribute(xmlNode, attrname, attrvalue, path) {
var attr;
if (xmlNode.ownerDocument.createAttributeNS)
attr = xmlNode.ownerDocument.createAttributeNS("http://www.firmglobal.com/MyNameSpace", attrname);
else
attr = xmlNode.ownerDocument.createNode(2, attrname, "http://www.firmglobal.com/MyNameSpace");
attr.nodeValue = attrvalue;
var n = xmlNode.selectSingleNode(path);
//Set the new attribute into the xmlNode
if (n.setAttributeNodeNS)
n.setAttributeNodeNS(attr);
else
n.setAttributeNode(attr);
}
感谢"托马拉克"的帮助。
相关文章:
- 在javascript中使用命名空间
- 为什么不推荐使用“with”?是否有更好或其他方法可以“下降”到对象的命名空间
- javascript中的命名空间,IDE中支持代码完成/内容辅助's
- 如何使用javascript命名空间
- js命名空间和变量范围
- html,js-如何限制元素"范围“-命名空间
- 转换自的JavaScript命名空间
- 命名空间与自调用函数
- 什么's当前命名空间/类中JavaScript子命名空间/类的语法
- 无法加载Ace.js编辑器模式和主题(命名空间项目&AMD require.js&grunt
- jQuery命名空间和使用“;这个“;
- 在Firebug控制台中监视javascript命名空间变量
- jQuery事件命名空间是否可以包含破折号
- 用自定义javascript全局命名空间替换窗口
- 如何在Typescript中导出具有其他名称的命名空间
- 使用 jQuery 读取命名空间属性
- 如何查找属性在当前作用域中引用的命名空间
- XML节点:添加具有命名空间的属性
- 如何获取某个命名空间中节点的所有属性
- 命名空间和对象属性