我已经创建了一个带有名称空间前缀'example'的根节点,如下所示:
var stringXML = '<?xml version="1.0" encoding="UTF-8" standalone="no" ?>'
+ '<example:root xmlns:example="http://example.com"></example:root>';
var xmlDoc = jQuery.parseXML(stringXML);
然后我在相同的命名空间下创建了一个子节点,如下所示:
var tag = xmlDoc.createElementNS('http://example.com', 'example:tag');
var x = xmlDoc.getElementsByTagNameNS('http://example.com', 'root')[0];
x.appendChild(tag);
我想为tag
节点创建一个名称空间属性,而不指定nodevalue。
var attr = xmlDoc.createAttributeNS('http://sample.com', 'sample:sampleNode');
tag.setAttributeNode(attr);
我期待这样的输出:
<?xml version="1.0" encoding="UTF-8"?>
<example:root xmlns:example="http://example.com">
<example:tag xmlns:sample="http://sample.com"/>
</example:root>
但在我的XML中,带有空字符串的属性显示如下:
<?xml version="1.0" encoding="UTF-8"?>
<example:root xmlns:example="http://example.com">
<example:tag xmlns:sample="http://sample.com" sample:sampleNode=""/>
</example:root>
任何人都可以提供解决方案吗?提前谢谢。