0
xmlノードに属性を追加しようとしています。私は次の関数を作成しました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で試してみましたが、正常に動作します。
名前空間を追加するにはどうすればよいですか? また、名前空間を持つ属性を作成する他の方法も知っていますか?
ありがとうございました
あなたは 'attrname'として何を渡しますか? – Tomalak
私は次のように渡します: "co:internalcollectiontype" – SergioKastro
私は解決策を見つけました(恐らく最良のものではありません)。私は答えとして投稿することはできません、私は8時間待つ必要があります。それまではここに私のコメントがあります: var n = xmlNode.selectSingleNode(path); if(cb.browser.ie)// IE n.setAttributeNode(attr); else n.setAttributeNodeNS(attr); – SergioKastro