Держите верхний регистр, используя attr() с jquery (с учетом регистра)
Я делаю это с помощью jQuery:
@xmlOut = $('<rules />')
@xmlOut.attr('xsi:schemaLocation','test')
Я получаю это:
<rules xsi:schemalocation='test'></rules>
Буква "L" больше не заглавная...
3 ответа
Есть билет http://bugs.jquery.com/ticket/11166
Кроме того, вы можете добавить хук атрибута (с именем в нижнем регистре) в jQuery, чтобы использовать нужный метод установки. Например:
$.attrHooks['viewbox'] = {
set: function(elem, value, name) {
elem.setAttributeNS(null, 'viewBox', value + '');
return value;
}
};
Затем вы можете установить атрибут с учетом регистра с помощью.attr():
$('svg').attr('viewBox', '0 0 100 100');
Попробуйте использовать простой Javascript setAttribute
который не чувствителен к регистру.
@xmlOut.get(0).setAttribute('xsi:schemLocation', 'test');
Ответ Кевина неверный, .setAttribute() изменит имя атрибута на строчные.
Вместо этого используйте element.setAttributeNS() с пустой строкой для первого параметра.
@xmlOut.get(0).setAttributeNS('', 'xsi:schemaLocation','test')
https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttributeNS