下拉列表中的其他属性(Javascript)

时间:2018-02-06 20:40:48

标签: javascript dropdown

我通过调用函数

来填充下拉列表
    function createOption(dropdown, text, value, gid) {
      var x = document.createElement('option');
      x.value = value;
      x.text = text;
      x.setAttribute("gid",gid);
      dropdown.options.add(x);
    }

我希望下拉列表中有一个额外的属性' id'因此,在id的特定值处,会弹出一个警告框。现在我调用另一个函数弹出警报框。

function showPopUp(dropdown) {
  console.log("from Show Pop-up: " + dropdown.getAttribute("gid")); //PRINTS null
  if(dropdown.getAttribute("gid")==5){
        alert("Approval needed");
    }
}

我无法访问另一个函数中下拉列表的id值。

1 个答案:

答案 0 :(得分:0)

您可以在javascript中使用Element.setAttribute()执行此操作。 它设置指定元素的属性值。如果该属性已存在,则更新该值;否则添加具有指定名称和值的新属性。



<select id="mySelect">
</select>

<p>Click the button to create an OPTION element with an id.</p>

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>
function myFunction() {
    var x = document.createElement("OPTION");
    x.value = "value";
    x.text = "text";
    x.setAttribute("data-id", "id");
    document.getElementById("mySelect").appendChild(x);
}
</script>
&#13;
&#13;
&#13;

P.S 您也可以根据值区分特定选项。无需使用id。