2010-03-05 7 views
8

Próbuję sprawdzić, czy opcja została zaznaczona w polu wyboru, a jeśli nie, chcę ją ostrzec ciąg znaków. Miałem na myśli ten link (Check if option is selected with jQuery, if not select a default), ale nie działa.Jak sprawdzić, czy nie wybrano żadnej opcji w polu wyboru przy użyciu jQuery?

Oto mój kod:

<select id="language" name="language"> 
    <option value=""></option> 
    <option value="1">One</option> 
    <option value="2">Two</option> 
    <option value="3">Three</option> 
</select> 

if(!$("#language option:selected").length) { 
    alert('no option is selected'); 
} 

ja dość dużo skopiował połączoną odpowiedzi, ale nadal nie działa. czego mi brakuje?

Odpowiedz

3
if ($("#language option:selected").val() === "") 
{ 
    alert("No items selected"); 
} 

lub po prostu

if ($("#language").val() === "") 
{ 
    alert("No items selected"); 
} 
+0

trzeba być ostrożnym, jeśli HTML jest '

5

może dlatego, że pierwszy z nich jest domyślnie zaznaczona.

spróbuj

if($('#language :selected').text() == ''){ 
    alert('no option is selected'); 
} 
0

Czy można umieścić kod jQuery wewnątrz

$(function() { });

?

Należy dokonać oceny po przygotowaniu modelu DOM.

0

I rozwiązać ten sam problem przy użyciu:

if ($('#mySelector option:selected').get().length>0) { 
    //code 
} else ... 
Powiązane problemy