2017-08-29 90 views
0

我有一個多選選項菜單(我可以使用命令/ shift/etc從列表中選擇多個元素)。我希望所有選項都被選爲默認值(當頁面加載時)。我知道,我可以使用選擇頁面加載選項

$(document).ready() 

等到頁面加載執行某項操作,但我不知道如何真正改變列表的選中狀態。請注意,有而不是複選框。

的選項的HTML看起來像這樣:

<select name="name" id="id1"> 
    <option value='value1'> 
    <option value='value2'> 
    <option value='value3'> 
    <option value='value4'> 
</select> 

注:我想變化是在JavaScript而非HTML,因爲我使用的是默認的「多項選擇菜單中的」模板是在表單字段中保持一致,並且我只想要一個特定字段默認情況下選中所有內容。我怎樣才能做到這一點?

+1

,你應該提供更多的代碼,以便我們可以幫助你。 –

+0

我添加了HTML以澄清如何創建多個選項列表。 – user7518095

+1

你有沒有做過任何搜索或做了一個嘗試?嘗試查看jQuery文檔或查看https://stackoverflow.com/q/13332484/691711是否有幫助。 – zero298

回答

2

默認情況下,<select>元素僅配置爲一次顯示一個選項。因此,爲了同時選擇多個元素,您需要將<select>元素的multiple屬性設置爲true。你可以用JavaScript這樣做:

document.getElementById('id1').multiple = true; 

一旦你這樣做,你可以以編程方式「選擇」每個選項。這是一個工作示例:

var el = document.getElementById('id1'); 
 

 
el.multiple = true; 
 

 
for (var i = 0; i < el.childNodes.length; i++) { 
 
    el.childNodes[i].selected = true; 
 
}
<select name="name" id="id1"> 
 
    <option value='value1'>1</option> 
 
    <option value='value2'>2</option> 
 
    <option value='value3'>3</option> 
 
    <option value='value4'>4</option> 
 
</select>