HTML <select>元素的默认selecteindex为-1,而不运行整个页面的javascript
Can an HTML <select> element have a default selectedIndex of -1 without running page-wide javascript?
我的网站中有几个地方需要一个"combobox"样式的控件。为此,我将组合框控件封装到. net服务器端组件中,以实现可重用性。有些页面上可能有一个组合框,有些页面上可能没有。
在核心,这个组合框包含一个文本框和一个与CSS对齐的"下拉框"。呈现的部分HTML只是:
<select>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
<option>Option 4</option>
</select>
下拉列表一开始必须为空,改变任何值(包括"Option 1")必须触发onchange事件。
我这样做:
document.getElementById("theSelectElement").selectedIndex = -1;
,但我不喜欢对页面上的每个元素运行javascript。我意识到我可以使用jQuery来针对CSS类进行选择,但是大多数页面都没有select元素,所以什么也不会发生。
是否有一种方法来设置selectedIndex是封装在标签本身?比如:
<select selectedIndex="-1">...
或
<select onload="this.selectedIndex = -1">...
?
select是一个无线电状态保存器,所以没有"非选定"状态
<select name="aaa">
<option value=""></option>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
<option>Option 4</option>
</select>
可以使用空的<选项>选项>
您可以使用以下选项:默认情况下,第一个选项将被自动选中
<select name="aaa">
<option value="0">select any option</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4">Option 4</option>
</select>
下面是select的一些文档:http://www.w3.org/TR/html4/interact/forms.html#h-17.6
如果你已经将它包装在你自己的用户控件或自定义控件中,那么你需要公开暴露defaultSelection
属性(或任何你命名它的东西),这样它就可以在你的服务器标签中指定。
您谈论在<select>
标记中做它,但这是HTML标记-而不是<ASP:DropDown ... >
或<myControl:CustomSelect ... >
的服务器端标记
EDIT:如果它是纯HTML,那么只需输出带有selected
属性设置的默认选择:
<select>
<option value="1">Top</option>
<option selected="selected" value="-1">Middle (Empty)</option>
<option value="2">End</option>
</select>
相关文章:
- 在终端中运行 JavaScript 时(使用 rhino),如何使用 print() 函数在一行中打印
- 向下滚动时运行javascript
- 在Android WebView中运行Javascript-onPageFinished循环
- 在父网页的iframe中运行JavaScript
- 有条件地运行javascript函数-Razor,HTML
- 如何通过获取用户输入和使用按钮来运行JavaScript函数
- 使用c#在Web服务器上运行JavaScript方法
- 单击链接时停止运行javascript
- 在浏览器检查表单之前运行javascript onsubmit
- 如何在表单提交事件后运行JavaScript*
- Mediawiki小部件将不会运行javascript
- 有没有一种方法可以在服务器端页面加载之前在加载时运行javascript
- 在GitHub上运行JavaScript Koans
- Chrome扩展:是否有一种方法可以运行JavaScript来获取页面上的内部html,并将其保存到扩展中的变量中
- 在不加载页面的情况下运行javascript
- [AutoIt]如何使用FF.au3在FireFox上的页面中运行javascript
- 仅在屏幕媒体上运行javascript/jquery,而不是打印
- Scala提升了如何运行javascript函数并将返回值存储在变量中
- 安卓系统:通过loadUrl运行javascript时,网络视图中的视频会冻结
- 在页面加载完成之前,使用URL参数运行JavaScript