0

我有一个这样的 XML 文件

<?xml version="1.0" standalone="no" ?>
<Reading>
<Item Time="17:35">
    <SlaveAddress />
    <Slave_4 Value="0" />
    <Slave_3 Value="0" />
    <Slave_2 Value="0" />
    <Slave_1 Value="1" />
</Item>
</Reading>

我的下拉列表看起来像这样

<select id="comboBox" style="width:100px;" tabindex="1">
 <option value=""></option>
 <option value="1">1</option>
 <option value="2">2</option>
 <option value="3">3</option>
 <option value="4">4</option>
</select>

<select> <option>是否可以根据该 XML 文件将任何内容变灰?这意味着如果Slave_1的值为 1<option>则启用 1,如果Slave_2为 0<option>则禁用 2 或显示为灰色。

然后用户可以根据任何启用的选项做出选择。

我很想从你那里得到任何意见。Javascript 或 JQuery 无关紧要。

4

1 回答 1

1

像这样的东西应该可以解决问题。解析 xml,mjQueryfy 它,遍历它,取出正确的东西并根据需要禁用或启用

var xml = $.parseXML('your_xml_as_a_string_or_whatever');
var $xml = $(xml);

$xml.find('Item').children().each(function(index, value) {
  var $this = $(this);
  var tagName = $this.prop('tagName').toLowerCase();
  if (tagName.indexOf("slave_") === 0) {
    var value = $this.attr('Value');
    var number = tagName.slice(-1);
    if (value === '0') {
      $('option[value="'+number+'"]').attr('disabled', 'disabled');
    } else {
      $('option[value="'+number+'"]').removeAttr('disabled');
    }
  }
});
于 2012-12-03T13:10:52.123 回答