检查我的表单中的选项是否被选中不起作用

时间:2017-02-09 10:00:33

标签: javascript forms html-select options

我试图检查我的表单中是否选择了某个选项(任何选项),但它无效。

我不是专门检查;这是我的代码:



if (document.getElementById('fillingtype') = selected;) {
  alert('yes');
} else {
  alert('no');
}

<select id="fillingtype" name="filling">
  <option id="tuna" value="tunamayo">Tuna Mayo</option>
  <option value="smokeychicken">Smokey Chicken + Crisp Lettuce</option>
  <option value="pizza">Meat Feast Pizza filling</option>
  <option value="hamcheese">Ham + Cheese</option>
</select>
&#13;
&#13;
&#13;

我似乎无法让它发挥作用,对于不同解决方案的任何建议都将不胜感激。

3 个答案:

答案 0 :(得分:2)

我猜总有一个选定的值(默认情况下它会是Tuna Mayo),你可以在用户选择这样的新值时添加一个监听器:

document.getElementById('fillingtype').addEventListener('change',function(){ 
  console.log(this.value) 
});
<select id="fillingtype" name="filling">
  <option id="tuna" value="tunamayo">Tuna Mayo</option>
  <option value="smokeychicken">Smokey Chicken + Crisp Lettuce</option>
  <option value="pizza">Meat Feast Pizza filling</option>
  <option value="hamcheese">Ham + Cheese</option>
</select>

答案 1 :(得分:0)

默认情况下,我们可以添加一个空值的非选项。

<option selected value="">Please Select</option>

如果值为空,则表示用户未选择任何选项:

if(document.getElementById('fillingtype').value)

您可以在此处查看示例:https://jsfiddle.net/mpad/8es6eunm/4/

答案 2 :(得分:-1)

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
</head>
<body>
<form>
<select id="fillingtype" name="filling">
  <option value="tunamayo">Tuna Mayo</option>
  <option value="smokeychicken">Smokey Chicken + Crisp Lettuce</option>
  <option value="pizza">Meat Feast Pizza filling</option>
  <option value="hamcheese">Ham + Cheese</option>
</select>
   </form>

<script>
$( "#fillingtype" ).change(function() {
alert($( "#fillingtype option:selected" ).text());
});
</script>
</body>
</html>

http://jsbin.com/tikifi/1/edit?html,js,console,output