[英]Can an HTML <select> element have a default selectedIndex of -1 without running page-wide javascript?
我的網站上有幾個地方需要“組合框”樣式控件。 為此,我將組合框控件封裝到.NET服務器端組件中以實現可重用性。 有些頁面可能有一個組合框,有些可能沒有。
在核心,這個組合框包含一個文本框和一個與CSS適當對齊的“下拉列表”。 部分HTML呈現簡單:
<select>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
<option>Option 4</option>
</select>
下拉列表必須從空開始,並且更改為任何值(包括“選項1”)必須觸發onchange事件。
我通過做類似的事情來實現這一點:
document.getElementById("theSelectElement").selectedIndex = -1;
但我不想對頁面上的每個元素運行javascript。 我意識到我可以使用jQuery來選擇CSS類,但大多數頁面上都沒有select元素,什么都不會發生。
有沒有辦法設置封裝在標簽本身的selectedIndex? 就像是:
<select selectedIndex="-1">...
要么
<select onload="this.selectedIndex = -1">...
?
選擇是無線電狀態持有者,因此沒有“未選擇”狀態
<select name="aaa">
<option value=""></option>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
<option>Option 4</option>
</select>
順便說一句,你可以使用一個空的<option>
您可以使用以下內容:默認情況下,將自動選擇第一個選項
<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 ... >
的服務器端標記
編輯:如果它是純HTML,那么只輸出帶有selected
屬性集的默認選擇:
<select>
<option value="1">Top</option>
<option selected="selected" value="-1">Middle (Empty)</option>
<option value="2">End</option>
</select>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.