2015-04-17 3 views
2

Я пытаюсь получить значение проверенного переключателя в jQuery. Но он возвращает значение как «undefined». Я искал решение для этой проблемы, но ничего не работает для меня.jQuery .val() возвращает undefined для переключателя

My HTML Code.

<label><input type="radio" class="service" name="service" id="all-service" value="all-service"> All Service</label><br> 
<label><input type="radio" class="service" name="service" id="electrician" value="Electrician"> Electrician</label><br> 
<label><input type="radio" class="service" name="service" id="painter" value="Painter"> Painter</label><br> 
<label><input type="radio" class="service" name="service" id="photo and video coverage" value="Photo and Video Coverage"> Photo and Video Coverage</label> 

Мой Jquery код ..

$(document).ready(function() { 
    $(".service").change(function() { 
     alert($(".service :checked").val()); 
    }); 
}); 

Здесь fiddle для моей проблемы ..

+5

Он должен быть ' ".Service: проверено"'. Космос означает, что вы просматриваете потомков. – Regent

ответ

7

Там не должно быть никакого пространства между именем класса и :checked атрибутом

$(".service").change(function() { 
     alert($(".service:checked").val()); 
    }); 

Fiddle

+1

Упс ..! Небрежная ошибка .. Большое спасибо .. – Mdumanoj

4
$(document).ready(function() { 
    $(".service").change(function() { 
     alert($(this).val()); 
    }); 
}); 

Link to Fiddle.

+1

Это лучший подход –

+1

, если он не установлен? I thnk пользователь хочет только выбранное значение. – nirmal

+0

@nirmal В этом случае вы не можете снять флажок без проверки другой кнопки. AFAIK, вы не можете отключить радио без помощи какого-либо javascript. –

0

Удалить дополнительное пространство bewteen .service и :

alert($(".service:checked").val()); 
Смежные вопросы