如何在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
。组合框的值始终是一个文本,因此没有问题?不,应该没有问题。然后,因为它没有做任何事情,所以会出现其他问题