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

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

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

 yourObject.append($.parseXML("").documentElement); 

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

var domA = $.parseXML("").documentElement; 创造元素

$(domA ).append($.parseXML('').documentElement); 从字符串添加子项

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

jQuery.parseXML将始终创建一个新的DOMParse和一个新的Document ,因此它非常繁重。

更好的方法是使用(非直观的) parseHTML ,使用context参数:

 // Create the context XML document; doc and $doc is reusable var doc = (new DOMParser()).parseFromString( '', '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( '', doc ) ); 

笔记:

 $.parseHTML("Adel"); //result: Adel $.parseXML("Adel"); //result: Adel 

我想你需要这些线:

 var request = $.parseXML(HtmlOrXmlStringSource); $(request).find(someElementInside).append(HtmlOrXmlStringSource_2); //Serialize XML var oSerializer = new XMLSerializer(); request = oSerializer.serializeToString(request); request = request.replace(new RegExp(' xmlns=""', "igm"), ""); 

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

谢谢