我是用jQuery做的:
@xmlOut = $('<rules />')
@xmlOut.attr('xsi:schemaLocation','test')
我明白了:
<rules xsi:schemalocation='test'></rules>
“L”不再是大写......
答案 0 :(得分:8)
尝试使用不区分大小写的普通Javascript setAttribute
。
@xmlOut.get(0).setAttribute('xsi:schemLocation', 'test');
答案 1 :(得分:8)
有一张票http://bugs.jquery.com/ticket/11166
或者,您可以将属性钩子(带小写名称)添加到jQuery,以便使用所需的setter方法。例如:
$.attrHooks['viewbox'] = {
set: function(elem, value, name) {
elem.setAttributeNS(null, 'viewBox', value + '');
return value;
}
};
然后,您可以使用.attr():
设置区分大小写的属性$('svg').attr('viewBox', '0 0 100 100');
答案 2 :(得分:1)
Kevin的回答不正确,。setAttribute()会将属性名称更改为小写。
相反,使用带有空字符串的element.setAttributeNS()作为第一个参数。
@xmlOut.get(0).setAttributeNS('', 'xsi:schemaLocation','test')
https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttributeNS