6

谁能给我一个从现有组合框中获取所选值的示例代码?

我有这段代码,但它什么也没做:

function check () 
{
    var e = document.getElementById("ticket_category_clone");
    var str = e.options[e.selectedIndex].text;

    alert(str);

    if (str==="Hardware")
    {
        SPICEWORKS.utils.addStyle('#ticket_c_hardware_clone{display: none !important;}');
    }       
}

SPICEWORKS.app.helpdesk.ready(check);​

这是代码的img

和代码

<select id="ticket_category_clone" name="ticket[category]" hdpp="ticket_category">
<option value=""></option><option value="Hardware">Hardware</option>
<option value="Software">Software</option>
<option value="Rede" selected="selected">Rede</option>
<option value="Pedidos">Pedidos</option>
<option value="Formação/Dúvida">Formação/Dúvida</option>
<option value="Outro">Outro</option><option value="#edit_categories#">Edit Categories...</option></select>

我希望它找到一种方法来获取该组合框的选定值

4

3 回答 3

20

有一个不必要的标签;将代码更改为:

var e = document.getElementById("ticket_category_clone").value;
于 2012-04-04T08:50:30.650 回答
4

我用这个

var e = document.getElementById('ticket_category_clone').value;

请注意,您不需要 javascript 中的“#”字符。

    function check () {

    var str = document.getElementById('ticket_category_clone').value;

      if (str==="Hardware")
      {
        SPICEWORKS.utils.addStyle('#ticket_c_hardware_clone{display: none !important;}');
      }

    }

SPICEWORKS.app.helpdesk.ready(check);​
于 2012-04-04T08:52:05.590 回答
2

它可能是其他人提到的 # 符号,因为这似乎工作得很好。

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>

</head>
<body>

    <select id="#ticket_category_clone">
  <option value="hw">Hardware</option>
  <option>fsdf</option>
  <option>sfsd</option>
  <option>sdfs</option>
</select>
<script type="text/javascript">
    (function check() {
        var e = document.getElementById("#ticket_category_clone");
        var str = e.options[e.selectedIndex].text;

        alert(str);
        if (str === "Hardware") { 
            alert('Hi'); 
        }


    })();
</script>
</body>
于 2012-04-04T09:05:36.930 回答