2011-10-24 4 views
6
<select name="category" id="category"> 
    <option value="">All Category</option> 
    <option value="1">Category 1</option> 
    <option value="2">Category 2</option> 
    <option value="3">Category 3</option> 

</select> 

Jak wybrać kategorię z value = ""jQuery dostać wybierz wartość opcji pusty

warunki do popraw:

if($('#category option:selected')){ 
    var category_url = "&category="+$('#category').val(); <!-- True --> 
} 

Warunek 2 źle:

if($('#category option[value=""]')){ 
    var category_url = "";        <!-- Error --> 
} 

Proszę, pomóżcie mi !!!

+0

Dodaj to, co próbujesz osiągnąć, abyśmy mogli wskazać Ci właściwy kierunek. Na przykład twój warunek 2 zawsze zwróci wartość "prawda", ponieważ zawsze będzie istniała wartość = "", nawet jeśli ta wartość nie jest wybrana. – rkw

+0

To działało w starszych wersjach jquery (1.7.2), jeśli użyłeś '' '$ (" option [value =] ")' '', ale teraz to już nie jest. –

Odpowiedz

2

Nie jestem pewien, czy dobrze rozumiem twoje pytanie, ale czy chcesz coś takiego zrobić?

if($('#category option:selected')){ 
    var selValue = $('#category').val(); 
    var category_url; 

    if(selValue) 
     category_url = "&category="+$('#category').val(); <!-- True --> 
    else 
     <!-- error --> 
} 
+1

'if ($ ('# category option: selected')) {' zawsze * zawsze * zwróci 'true'. Musisz sprawdzić "długość". –

+0

dziękuję bardzo. Udało mi się z kodem: 'var category_url = ''; if ($ ("# kategoria"). val()! = '') {category_url = "& category =" + $ ("# kategoria"). val(); } ' – TuanNguyen

2
if(!$("#category").val()) 
    //selected valule is "" 
+0

dziękuję bardzo. Udało mi się z kodem: 'var category_url = ''; if ($ ("# kategoria"). val()! = '') {category_url = "& category =" + $ ("# kategoria"). val(); } ' – TuanNguyen

2

To jest trochę stary, ale można zrobić:

$('#category').find('option:empty') 
0

W rzeczywistości, jeśli poinformować przeglądarkę, aby wybrać nic, to robi Jox:

$("#category option").attr("selected", false); //Unselect each option 

Domyślnie przeglądarka wybierze pierwszą opcję, niezależnie od wartości opcji.

Mam nadzieję, że to pomoże :)