用于从组合框中获取所选值的JavaScript代码

用于从组合框中获取所选值的JavaScript代码,javascript,combobox,Javascript,Combobox,任何人都可以给我一个从现有组合框中获取所选值的示例代码吗 我有这个代码,但它没有做任何事情: function check () { var e = document.getElementById("ticket_category_clone"); var str = e.options[e.selectedIndex].text; alert(str); if (str==="Hardware") { SPICEWORKS.util

任何人都可以给我一个从现有组合框中获取所选值的示例代码吗

我有这个代码,但它没有做任何事情:

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);​
这是代码的一部分

代码呢

<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>

硬件
软件
雷德
佩蒂多斯
形式/形式
输出编辑类别。。。

我想要的是找到一种方法来获取组合框的选定值,因为它有一个不必要的标签;将代码更改为:

var e = document.getElementById("ticket_category_clone").value;
我用这个

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);​
这可能是其他人提到的那个标志,因为它看起来很好用

<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>

硬件
fsdf
sfsd
可持续发展基金
(功能检查){
var e=document.getElementById(“#票证(分类)克隆”);
var str=e.options[e.selectedIndex].text;
警报(str);
如果(str==“硬件”){
警报(“Hi”);
}
})();

我不需要#即使它在组合框的id上?在使用普通javascript时不需要,只有在使用框架(需要它)时才需要它,如jQuery@user181891你找到你想要的答案了吗?如果没有,请使用包含组合框的html编辑您的问题。如果是,请检查最佳答案作为解决方案。我的代码应该可以工作:检查这个示例:只需单击顶部的运行按钮。我已经用您的示例和工作的javascript更新了我的代码。@user181891这就是为什么不获取值,在括号后添加“.value”,如下所示:var e=document.getElementById(“ticket\u category\u clone”).value;