Jquery改变"value"属性在XML元素中

Jquery to change value of "value" attribute in xml element

本文关键字:quot XML 元素 value 改变 Jquery 属性      更新时间:2023-09-26

示例(代码段):

 <FIELD name="xxxxxxxx" refname="xxxx" type="String" reportable="dimension">
  <WHEN field="xxxxxxxx" value="xxxxxxxxxxxxxxxxx">
    <ALLOWEXISTINGVALUE />
    <ALLOWEDVALUES expanditems="true">
      <LISTITEM value="n.a." />
      <LISTITEM value="Test" />
    </ALLOWEDVALUES>
  </WHEN>
  <WHEN field="yyyyyyyyyyyyy" value="yyyyyyy">
    <ALLOWEXISTINGVALUE />
    <ALLOWEDVALUES expanditems="true">
      <LISTITEM value="n.a." />
    </ALLOWEDVALUES>
  </WHEN>
</FIELD>

当我这样做的时候:

 var $listItem = $(xmlDoc).find("FIELD[name='" + dependentFieldType + "'] > WHEN[value='" + productName + "'] ALLOWEDVALUES > LISTITEM[value='" + listItem + "']");
 $listItem.val(newListItemValue);

不更新列表项值

也尝试了。prop("value")和。attr("value")在$listItem.

将非常感谢上面xml示例的工作jsfiddle,它编辑listtem

的value属性。

每次调用$(xml)时,都是基于原始字符串创建一个新的DOM对象。试试这个:

j = $(xml);
j.find('attr').attr('foo', 'bar');
console.log(j.html());

现在您只需解析XML字符串一次,并更新结果节点。