jquery .append()区分大小写的元素

问题描述 投票:4回答:4

嗨,我需要从表单中的数据创建xml,以将其发送到webservice。问题是.append()不区分大小写,所以.append('<EDO />')将创建<edo>。但是xml区分大小写,那么有没有办法解决这个问题呢?而且我选择使用domObject而不是字符串,因为这样我就不必编写endtags,这在我的场景中会非常困难。

jquery append case-sensitive
4个回答
6
投票

尝试使用$.parseXML()创建XML元素:

yourObject.append($.parseXML("<EDO />").documentElement);

3
投票

最后,正如@FrédéricHamidi所说,为了制作区分大小写的xml,我使用了这些函数:

var domA = $.parseXML("<EDO_A />").documentElement;创造元素

$(domA ).append($.parseXML('<EDO_Child />').documentElement);从字符串添加孩子

$(domA).append(domB)domA.appendChild(domB)添加子对象


3
投票

jQuery.parseXML将永远创造一个新的DOMParse和一个新的Document,所以它非常沉重。

更好的方法是使用qazxsw poi参数使用(不直观的)qazxsw poi:

parseHTML

0
投票

笔记:

context

我想你需要这些线:

// Create the context XML document; doc and $doc is reusable
var doc = (new DOMParser()).parseFromString( '<root/>', 'text/xml' ); 
var $doc = $( doc.documentElement )

// Create case-sensitive XML element;
// this will call doc.createElement( 'EDO' ), as of jQuery 2.1.3
$doc.append( $.parseHTML( '<EDO />', doc ) ); 

现在请求已准备好通过$ .ajax()发送;

谢谢

© www.soinside.com 2019 - 2024. All rights reserved.