4

jQuery 正在小写所有name属性值。
我有这样的 HTML 表单:

<input type="text" name="firstName">
<input type="text" name="lastName">
<input type="text" name="amountForName">

尝试读取它并创建一个带有其值的 xml。
jQuery

$(section).find('input').each(function(i, field) {
                        console.log($(field).attr('name'));//prints 'firstName'
                        var $fieldName  = $.createElement($(field).attr('name'));
                        $fieldName.text($(field).val());

$.createElement = function(name)
            {
                console.log('Creating Element '+name); //prints 'firstName'
                return $('<'+ name +' />');
            }

但是 xml 元素松散了,我得到了

<firstname>himanshu</firstname><lastname>yadav</lastname>

如何保留节点名称的驼峰式大小写?

4

2 回答 2

2

在这里检查:

xmlDoc = document.implementation.createDocument("", "", null);
root = xmlDoc.createElement("description");
xmlDoc.appendChild(root);
alert((new XMLSerializer()).serializeToString(xmlDoc));

这是来自这里:https ://stackoverflow.com/a/1752772/2391022

另外,在这里查看:http: //www.w3schools.com/dom/dom_nodes_create.asp

于 2013-08-02T17:41:33.877 回答
2

jQuery 用于解析和操作 HTML,而不是 XML。如果这是您想要的,请使用 XML 库来创建 XML,或者自己在字符串中构建它。

var result='';
$(section).find('input').each(function(i, field) {
  console.log($(field).attr('name'));//prints 'firstName'
  var $fieldName = $(field).attr('name');
  result+='<'+$fieldname+'>'+$(field).val()+'</'+$fieldname+'>';
}

这仅是示例。在实际的生产系统中,您需要确保字段名和值都是 XML 编码的,否则可能会发生各种不好的事情。

于 2013-08-02T17:41:43.300 回答