如何在“if”语句中比较<option>“data-names”?</option>

时间:2014-11-28 22:50:53

标签: javascript if-statement

我有一个小问题。我有“值”和“数据名称”的选项。

<option value=”A” data-name1=”X”>
<option value=”B” data-name1=”Y”>

如果所选选项是某个“数据名称”

,我希望计算机返回特定值

假设有2个“数据名称”,X和Y.

如何将所选选项的数据名称与2个数据名称X和Y进行比较,以找出它是哪一个?

我正在思考这个问题:


var data_name1 = e.options[e.selectedIndex].dataset.name1; 

if (data_name1 == “X”) {
…
}
else if (data_name == “Y”) {
…
}
else {
…
}

这可能吗?

谢谢!

完整代码---

&#13;
&#13;
<script>
document.getElementById("selectElement").selectedIndex = -1; // so that no option //is selected when the page is loaded


function getData(){
  var e = document.getElementById("qwert"); // get the <select> element

  var data_name1 = e.options[e.selectedIndex].dataset.name1; // get the selected //<option> and its name1 data attribute

  

 // var data_name2 = e.options[e.selectedIndex].dataset.name2;  get the selected //<option> and its name2 data attribute

 

  var value = e.options[e.selectedIndex].value; // get the value of the selected <option>


//Result
document.getElementById("data1").innerHTML = data_name1;
  document.getElementById("value").innerHTML = value;  
}
</script>











<select id="qwert" onclick="getData ()">
<option value="135" data-name1="M">A</option>
            <option value="150" data-name1="R">B</option>
            <option value="51" data-name1="R">C</option>
            <option value="27" data-name1="M">D</option>
</select>

<p>
  <label>data-name1 = </label>
  <span>"</span><span id="data1"></span><span>"</span>
</p>



<p>
  <label>value = </label>
  <span>"</span><span id="value"></span><span>"</span>
</p>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:2)

您需要使用==运算符来比较对象。

=是一个赋值表达式。

if (data_name1 == “X”) {
   // Operations if data_name is equal to X
}
else if (data_name == “Y”) {
  // Operations is data_name is equal to Y
}
else {

}