我怎么能检查用户是否从HTML5中的<select>字段选择了一些东西?

我看到<select>不支持新的必需属性…我必须使用JavaScript吗?还是我遗漏了什么?:/


当前回答

试试这个,这个会有用的,我试过了,这个有用。

<!DOCTYPE html>
<html>
<body>

<form action="#">
<select required>
  <option value="">None</option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option>
</select>
<input type="submit">
</form>

</body>
</html>

其他回答

在html5中,你可以使用完整的表达式:

<select required="required">

我不知道为什么简短的表达不管用,但是试试这个。 这就解决了。

试试这个

<select>
<option value="" style="display:none">Please select</option>
<option value="one">One</option>
</select>

首先,您必须在第一个选项中分配空白值。 选择这里。而不是只需要工作。

默认情况下,您可以使用option元素的selected属性来选择一个选项。您可以使用select元素的必需属性来确保用户选择了一些东西。

在Javascript中,你可以检查selectedIndex属性来获得所选选项的索引,或者你可以检查value属性来获得所选选项的值。

根据HTML5规范,selectedIndex“返回第一个选中项的索引(如果有),如果没有选中项则返回−1。value "返回第一个选中项的值(如果有),如果没有选中项则返回空字符串。"如果selectedIndex = -1,那么你知道他们没有选择任何东西。

<button type="button" onclick="displaySelection()">What did I pick?</button>
<script>
    function displaySelection()
    {
        var mySelect = document.getElementById("someSelectElement");
        var mySelection = mySelect.selectedIndex;
        alert(mySelection);
    }
</script>

试试这个,这个会有用的,我试过了,这个有用。

<!DOCTYPE html>
<html>
<body>

<form action="#">
<select required>
  <option value="">None</option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option>
</select>
<input type="submit">
</form>

</body>
</html>