Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中从组合框中获取值_Javascript_Spiceworks - Fatal编程技术网

如何在javascript中从组合框中获取值

如何在javascript中从组合框中获取值,javascript,spiceworks,Javascript,Spiceworks,我有这个函数,我想让var类别具有id为#ticket\u category\u clone的组合框的值 我做错了什么 function check () { var category="#ticket_category_clone"; if (category=="Hardware") { SPICEWORKS.utils.addStyle('#ticket_c_hardware_clone{display: none !impor

我有这个函数,我想让
var
类别具有id为
#ticket\u category\u clone的组合框的值

我做错了什么

   function check () {
      var category="#ticket_category_clone";
          if (category=="Hardware")
      {
      SPICEWORKS.utils.addStyle('#ticket_c_hardware_clone{display: none !important;}');
      }
    }

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

仅当我按以下方式编写代码时,它才会发出警报:

function check () {
    // var category = document.getElementById('#ticket_c_hardware_clone').value;
   var category ="Hardware";
   alert(category)
          if (category=="Hardware")
      {
        SPICEWORKS.utils.addStyle('#ticket_c_hardware_clone{display: none !important;}');


      }
   alert(category)
    }

SPICEWORKS.app.helpdesk.ready(check);

像这样

以及守则:

<select id="ticket_category_clone" name="ticket[category]" hdpp="ticket_category"><option value=""></option>

不知道spiceworks,但在JavaScript中,您可以这样做:

var category = document.getElementById("ticket_category_clone").value;
如果
#
是id的一部分,也可以添加它,但请注意它不是有效的id:

var category = document.getElementById("#ticket_category_clone").value;
看起来你需要一些调试。请尝试以下代码:

var category = "";
var ddl = document.getElementById("ticket_category_clone");
if (ddl) {
    alert("found (1)");
    category = ddl.value;
} else {
    ddl = document.getElementById("#ticket_category_clone");
    if (ddl) {
        alert("found (2)");
        category = ddl.value;
    } else {
        alert("element can't be found");
    }
}
alert(category);

您收到了什么警报?

您能用这行代码进行测试吗

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

alert(str)
,如果您得到想要的值?

此添加可能很晚,但如果有人无意中发现了这一点,他们应该知道SpiceWorks使用prototype.js作为JavaScript库。因此,要在DOM中获取元素,可以使用$符号

因此,为了获得组合框,您可以使用以下语法

var e = $("#ticket_category_clone");
var category = e.options[e.selectedIndex].text;

该值可以是文本、数字或三个数字。没问题吗?该类型将始终是字符串(文本),因此要区别对待,您必须进行转换。例如,要将其视为数字,请使用
parseInt
parseFloat
。组合框的值始终是一个文本,因此没有问题?不,应该没有问题。然后,因为它没有做任何事情,所以会出现其他问题