2010-12-14 3 views
1

У меня есть форма, которая имеет выберите элементКак выбрать вариант в списке выбора с помощью JQuery

<select name="adddisplaypage[]" id="adddisplaypage" multiple="multiple"> 
    <option value="all" label="all">all</option> 
    <option value="index" label="index">index</option> 
    <option value="tour" label="tour">tour</option> 
    <option value="aboutus" label="about us">about us</option> 
    <option value="contactus" label="contact us">contact us</option> 
    <option value="destination" label="destination">destination</option> 
    <option value="reservation" label="reservation">reservation</option> 
</select> 

может кто-нибудь помочь мне, чтобы выбрать эту опцию (множественный выбор) по щелчку т.е. параметр получает выбран при нажатии и отменяется, если выбран по щелчку.

+0

Разве это не точное поведение обычного браузера? – jensgram

+0

Я не знаю !! Я должен щелкнуть Ctr + щелчок, чтобы выбрать несколько опций. –

+0

использовать переключатель по клику опций. – Vivek

ответ

2

Я понял, что, возможно, неправильно понял ваш вопрос. Что-то вроде следующего должно работать, хотя я не уверен в поддержке браузера:

$('#adddisplaypage option').click(function(e) { 
    e.preventDefault(); 
    var self = $(this); 

    if(self.attr('selected') == '') { 
    self.attr('selected', 'selected'); 
    } else { 
    self.attr('selected', ''); 
    } 
}); 
+0

твоя идея работает, но код не работает +1 для идеи. Я не хочу изменять атрибут «выбран» по вашему коду, я пытался самостоятельно, но все еще не работал. –

+0

P.S что я сделал, был вручную установлен выбранный атрибут из firebug –

2

В вашем click() обработчиком, вы можете написать что-то вроде:

$("#adddisplaypage").val("index"); 

Это должно выбрать "индекс", например.

+0

выбирает только один индекс. Я хочу выбрать несколько индексов. –

+0

Я думаю, что ответ Брайана ниже - то, что вам может понадобиться! – slhck

1

Вы можете передать массив методу .val(). Например:

$('#adddisplaypage').val(['index', 'tour']); 
Смежные вопросы