<select id="id_deals-1-deal_template" name="deals-1-deal_template">
 <option selected="selected" value="">---------</option>
 <option value="1" selected="selected">Pear</option>
 <option value="2">Apple</option>
 <option value="4">Melon</option>
</select>

Aby wybrać Melon, muszę to zrobić:

$('#id_deals-1-deal_template>option:eq(3)').prop('selected', true);

Ale wolałbym wybrać klucz podstawowy, który jest 4 w tym przypadku. Dlatego możliwe jest wybranie rozwijanej wartości, a nie sekwencji?

2
Houman 25 wrzesień 2012, 17:51

4 odpowiedzi

Najlepsza odpowiedź

Spróbuj użyć .val, który może być seter lub getter na podstawie argumentu. Poniżej znajduje się setter.

$('#id_deals-1-deal_template').val(4);
3
Selvakumar Arumugam 25 wrzesień 2012, 13:52

Posługiwać się

$('#id_deals-1-deal_template').val(4);

Lub

$('#id_deals-1-deal_template').val('Melon');
1
Martijn Pieters 25 wrzesień 2012, 14:03
$('#id_deals-1-deal_template').val(4);

Oto demo:

http://jsfiddle.net/m3ubc/

2
Chris Dixon 25 wrzesień 2012, 13:54

Wybierz według nazwy opcji

$("#id_deals-1-deal_template option").each(function() {
    if($(this).text() == 'Melon') {
    $(this).attr('selected', 'selected');            
}                        
});

Wybierz według wartości ID

$("#id_deals-1-deal_template option").each(function() {
    if($(this).text() == '4') {
    $(this).attr('selected', 'selected');            
    }                        
});
0
GTodorov 25 wrzesień 2012, 14:09