在下拉列表中空白HTMLselect没有空白项目

如何实现subj?

当我写:

<form> <select> <option value="0">aaaa</option> <option value="1">bbbb</option> </select> </form> 

那么默认select的项目是“aaaa”

当我写:

 <form> <select> <option value=""></option> <option value="0">aaaa</option> <option value="1">bbbb</option> </select> </form> 

那么默认select的项目是空白的,但是这个空白项目下拉。

我怎么能实现SELECT标签与隐藏在下拉列表中的默认空白值?

只需使用禁用和/或隐藏的属性:

 <option selected disabled hidden style='display: none' value=''></option> 
  • selected使该选项成为默认选项。
  • disabled使得这个选项不可点击。
  • style='display: none'使得这个选项不会在旧浏览器中显示。 请参阅: 我可以使用隐藏属性的文档。
  • hidden使此选项不会显示在下拉列表中。

您可以通过使用.propselectedIndex设置为-1 : http : //jsfiddle.net/R9auG/ 。

对于较老的jQuery版本,使用.attr而不是.prop : http : //jsfiddle.net/R9auG/71/ 。

简单使用

 <option value="" selected disabled>Please select an option...</option> 

可以在任何地方工作而不需要脚本,并且允许您同时指导用户。

 <select> <option value="" style="display:none;"></option> <option value="0">aaaa</option> <option value="1">bbbb</option> </select> 

这是一个简单的方法来使用普通的JavaScript来做到这一点。 这是pimvdb发布的jQuery脚本的等价物。 你可以在这里testing它。

 <script type='text/javascript'> window.onload = function(){ document.getElementById('id_here').selectedIndex = -1; } </script> 

 <select id="id_here"> <option>aaaa</option> <option>bbbb</option> </select> 

确保“id_here”在表单和JavaScript中匹配。

你不能。 他们根本就不这样工作。 下拉菜单必须始终select其中一个选项。

你可以(尽pipe我不推荐它)观察一个更改事件,然后使用JS删除第一个选项,如果它是空的。

纯粹的HTML @isherwood有一个很好的解决scheme。 对于jQuery,给你的select下拉一个ID然后用jQueryselect它:

 <form> <select id="myDropDown"> <option value="0">aaaa</option> <option value="1">bbbb</option> </select> </form> 

然后使用这个jQuery清除页面加载下拉菜单:

 $(document).ready(function() { $('#myDropDown').val(''); }); 

或者把它放在一个函数里面:

 $('#myDropDown').val(''); 

完成你正在寻找的东西,如果你需要在没有重新加载页面的情况下清空下拉列表,可以很容易地把它放在可能在页面上调用的函数中。

你可以试试这个片段

 $("#your-id")[0].selectedIndex = -1 

它为我工作。