1

这是我的简单 HTML 选择程序,默认情况下它的显示值为沃尔沃(第一个值)是否有可能,不显示任何值并让用户选择?

<!DOCTYPE html>
<html>
<body>

<form action="demo_form.asp">
<select name="cars">
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>
<input type="submit">
</form>

</body>
</html>
4

6 回答 6

6

这真的很简单。只需添加一个空白选项:

<form action="demo_form.asp">
<select name="cars">
  <option></option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>
<input type="submit">
</form>
于 2013-07-09T18:32:18.080 回答
4

在第一个位置添加一个空白选项。一定要给它一个值,然后你可以在你的提交处理程序中检查它。编辑:或者只使用 selectedIndex。
IE

if(document.getElementById("select1").selectedIndex != 0){
  form1.submit();
  }
else {alert("Please select a value!");}

验证他们已经选择了一些东西。

<form name="form1" id="form1" action="demo_form.asp">
<select id="select1"name="cars">
<option value="none"></option>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>
<input type="submit">
</form>
于 2013-07-09T18:39:31.830 回答
1

有两种方法:

1)禁用第一项:

<select name="cars">
  <option value="" disabled>[Select an item]</option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>

2)如前所述,将第一项设为空。

<select name="cars">
  <option value=""></option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>
于 2013-07-09T18:34:17.097 回答
0

创建一个 div(我称之为“noShow”),

<div class="noShow">
    <form action="demo_form.asp">
    <select name="cars">
      <option value="volvo">Volvo</option>
      <option value="saab">Saab</option>
      <option value="opel">Opel</option>
      <option value="audi">Audi</option>
    </select>
    <input type="submit">
    </form>
</div>    <!--  end noShow DIV

然后,使用样式表 (CSS),将其应用于汽车

.noShow option:first-child{
display:none;

试试看,祝你好运

于 2013-07-09T18:32:59.110 回答
0

没有“干净”的方式来做你所要求的 - HTMLselect将始终显示其中一个值。

但是,您可以包含“未选择”选项:

<option value=''>--Not Selected--</option>

但是您还必须进行一些验证以确保用户实际选择了有效值。这是一个不同问题的主题。:)

于 2013-07-09T18:33:12.850 回答
-1

如果您还想提供一些信息,最简单的方法是做这样的事情:

<form action="demo_form.asp">
<select name="cars">
  <option value="default">Pick Something!</option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>
<input type="submit">
</form>
于 2013-07-09T18:32:50.207 回答