簡體   English   中英

基於xml文件將選擇選項灰顯

[英]Grey out a select option based on xml file

我有一個這樣的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>

是否可以基於該XML文件將<select> <option>的任何一個顯示為灰色? 表示如果Slave_1的值為1,則啟用<option> 1,如果Slave_2為0,則禁用或禁用<option> 2。

然后,用戶可以基於任何啟用的選項進行選擇。

我很樂意收到您的任何意見。 Javascript或JQuery無關緊要。

這樣的事情應該可以解決問題。 解析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');
    }
  }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM