更改时的Javascript警报(显示错误)
试图从select向所选选项发出警报,但未发出警报 它显示了一个错误: {“message”:“未捕获的TypeError:无法读取的属性'value' 空,“文件名”:“行号”:18,更改时的Javascript警报(显示错误),javascript,jquery,Javascript,Jquery,试图从select向所选选项发出警报,但未发出警报 它显示了一个错误: {“message”:“未捕获的TypeError:无法读取的属性'value' 空,“文件名”:“行号”:18, “科尔诺”:43} 我试过: 函数选择选项(){ var x=document.getElementById(“item1”).value; 警报(“您选择:“+x”); 如果(选项==“项目”){ 返回true; }否则如果(选项==“ZZ2017TF11A1”){ 返回true; }否则如果(选项==“Z
“科尔诺”:43} 我试过:
函数选择选项(){
var x=document.getElementById(“item1”).value;
警报(“您选择:“+x”);
如果(选项==“项目”){
返回true;
}否则如果(选项==“ZZ2017TF11A1”){
返回true;
}否则如果(选项==“ZZ2017TF11A2”){
返回true;
}
返回false;
}
项目
衬衫
喘气
如果使用document.getElementById(“item1”)
,请在元素中添加id=“item1”
。只需使用$('.\item1').val()
#item1
指的是ID,您只在HTML中指定了名称
<select id="item1" class="country" name="item1" onChange="selectOption()">
<option value="Select Item">Item</option>
<option value="ZZ2017TF11A1">Shirt</option>
<option value="ZZ2017TF11A2">Pant</option>
</select>
项目
衬衫
喘气
您还忘了定义选项
,您可以通过$(“#item1 option”)
来实现这一点。如果需要使用纯JavaScript
(不使用jQuery
),您可以尝试这一点。我做了一些修改,使代码更容易理解
function selectOption() {
var elem = document.getElementById("item1");
// get selected option value
var selectedOptVal = elem.options[elem.selectedIndex].value;
alert("You selected: " + selectedOptVal);
// get selected option text
var selectedOptTxt = elem.options[elem.selectedIndex].text;
if (selectedOptTxt == "Item") {
return true;
} else if (selectedOptTxt == "ZZ2017TF11A1") {
return true;
} else if (selectedOptTxt == "ZZ2017TF11A2") {
return true;
}
return false;
}
在select标记中添加id
字段
<select class="country" id="item1" name="item1" onChange="selectOption()">
<option value="Select Item">Item</option>
<option value="ZZ2017TF11A1">Shirt</option>
<option value="ZZ2017TF11A2">Pant</option>
</select>
项目
衬衫
喘气
另外,请关注您的嵌套if部分。因为它不可用。请尝试以下操作:
功能选择选项(元素){
var x=element.options[element.selectedIndex].text;
警报(“您选择:“+x”);
var option=element.options[element.selectedIndex].value;
如果(选项==“项目”){
返回true;
}否则如果(选项==“ZZ2017TF11A1”){
返回true;
}否则如果(选项==“ZZ2017TF11A2”){
返回true;
}
返回false;
}
项目
衬衫
喘气
函数选择选项(){
$(this).html(警报(“您选择的:+$(“#item1”).val());//用于所选选项值
$(this).html(console.log(“您选择:”+$(“#item1 option:selected”).text());//用于所选选项文本
}
项目
衬衫
喘气
非常感谢您解决了这个错误。但是,它仍然有一个错误:{“message”:“uncaughtreferenceerror:option未定义”,“filename”:https://stacksnippets.net/js“,“lineno”:20,“colno”:3}
<select class="country" id="item1" name="item1" onChange="selectOption()">
<option value="Select Item">Item</option>
<option value="ZZ2017TF11A1">Shirt</option>
<option value="ZZ2017TF11A2">Pant</option>
</select>