Chaque fois que j'appelle xml.setNamespace(ns)
, l'espace de noms de l'élément est défini sur ns
, mais ns
est également ajouté en tant qu'un autre espace de noms avec son propre préfixe à l'élément. Je voudrais savoir comment arrêter ce dernier (je suis d'accord avec la modification XML.prototype.function::setNamespace
) sans définir @xmlns
car je ne peux pas utiliser la syntaxe E4X. Alternativement, un XML.prototype.function::setAttribute
qui n'utilise pas la syntaxe E4X @attribute (sauf bien sûr pour l'utilisation de function::
pour le définir) serait encore mieux.Ne pas ajouter un espace de nom lors de l'utilisation de xml.setNamespace()
Exemple:
var xhtml = new Namespace("http://www.w3.org/1999/xhtml"),
xml = <foo/>;
xml.setNamespace(xhtml);
// what I get:
xml.toXMLString() ===
<foo
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns="http://www.w3.org/1999/xhtml"
/>.toXMLString();
// what I want:
xml.toXMLString() ===
<foo
xmlns="http://www.w3.org/1999/xhtml"
/>.toXMLString();
Rhino semble traiter 'setNamespace' comme' addNamespace', qui ISN Ne pas avoir un nom d'espace de nom (juste un uri). –