[英]Removing selected option from dropdown selects default option not next selected
我正在操縱一個選擇,在顯示之前,它有多個選擇的選項。 在我的代碼之后,只有一個保持選中狀態,但是因為我刪除了前一個選擇,所以選擇顯示的是默認值,而不是下一個選擇的值。
<body>
<select id="test">
<option value="1">1 month</option>
<option value="2" selected="selected">2 month</option>
<option value="3" selected="selected">3 month</option>
</select>
</body>
和JavaScript
$('#test option[value=3]').remove();
這里的例子 :
這是預期的嗎? 在控制台中,示例中的選項2仍將具有selected屬性。
看來是默認行為。 當您用selected
標記多個時,它將使列表中的最后一個成為選中的一個。 刪除所選項目后,它將始終選擇第一個。 無論是否有其他項目selected
屬性。
在chrome(38.0.2125.104 m),firefox 31和ie10中測試。 到處都有相同的行為。
還要注意,select將顯示帶有select屬性的最新選項。 如果您有: <select id="test"> <option value="1">1 month</option> <option value="2" selected="selected">2 month</option> <option value="3" selected="false">3 month</option> </select>
仍會<select id="test"> <option value="1">1 month</option> <option value="2" selected="selected">2 month</option> <option value="3" selected="false">3 month</option> </select>
最后一個。 它與0,空字符串或放置在其中的任何內容相同。
這里有一個測試和解決方法:
http://jsfiddle.net/s8j7t2g5/9/
選項的attr仍處於選中狀態,但選擇的val錯誤。
$("#test option").each(function () {
if($(this).attr("selected") == "selected")
{
$('#test').val($(this).val());
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.