2012-07-24 113 views
2

如何使用jquery的val()預選多選html標籤中的選項?使用val預選選項()

我的意思是說,你有一個多選組件,你想要預選一些值?

回答

7

假設我理解正確你的問題,你可以通過值的數組到.val()方法:

$("#yourSelect").val(["value1", "value2"]); 

這裏有一個working example

+0

有關取消選擇怎麼樣? – oneiros 2012-07-24 18:14:31

+0

只需傳遞一個空數組,當然。 – Blazemonger 2012-07-24 18:15:54

+1

@imparator - 迭代所選'option'元素的集合,並在要取消選擇的元素上調用'.prop(「selected」,false)''。或者再次調用'.val()'並傳遞你想要選擇的值。 – 2012-07-24 18:16:27

3

你可以這樣說:

HTML:

<select multiple="multiple"> 
    <option value="volvo">Volvo</option> 
    <option value="saab">Saab</option> 
    <option value="mercedes">Mercedes</option> 
    <option value="audi">Audi</option> 
</select>​ 

的jQuery:

$("select").val(["volvo", "mercedes"]).prop("selected", true); 

下面是與例如小提琴:http://jsfiddle.net/HCm3e/

+0

你不需要'prop'調用。它沒有任何意義,因爲它將設置'select'元素的'selected'屬性(不是'option'元素)。 – 2012-07-24 18:15:10

+0

@JamesAllardice,該死的,你是對的!感謝指出:) – scumah 2012-07-24 18:19:43

+0

@scumah - 在你的小提琴中,(「選擇」,假)不會取消選擇。任何想法爲什麼這樣? – oneiros 2012-07-24 19:31:24