2013-05-21 7 views
6

Mam formularz tylko do odczytu, który chcę wypełnić wartości zwracane z kwerendy ajax. Czego nie rozumiem, to poprawna składnia, aby uzyskać identyfikator określonego przycisku radiowego. Wiem, jaka wartość istnieje w db, ale jak uzyskać identyfikator przycisku opcji, aby zmienić atrybut przycisku opcji?Jquery uzyskać identyfikator przycisku opcji testując wartość

Na przykład, w opcjach przycisk radiowy z „nazwa” == Criteria1Score”, jak wrócę identyfikator wejścia, gdzie wartość == Dobry

Oto przykład struktury formularza.:

<legend>Criteria1</legend> 
<label class="radio inline"> 
    Great 
    <input id="Criteria1Score1" class="Score" name="Criteria1Score" type="radio" value="Great"> 
</label> 
<label class="radio inline"> 
    Good 
    <input id="Criteria1Score2" class="Score" name="Criteria1Score" type="radio" value="Good"> 
</label> 
<label class="radio inline"> 
    Bad 
    <input id="Criteria1Score3" class="Score" name="Criteria1Score" type="radio" value="Bad"> 
</label> 

Odpowiedz

23

$('input[type=radio][name=Criteria1Score]:checked').attr('id')

Zobacz fiddle Przykład

+0

Dzięki temu wszystkie te odpowiedzi działają. Brakowało mi selektora wielu atrybutów. Teraz to działa. – manisha

+0

Dla każdego, kto przegląda poprawną wersję tego dla współczesnych wersji jQuery to: $ ('input [type = radio] [name = Criteria1Score]: checked') .project ('id') –

0

można pętli tych wejść do tego, co trzeba:

$("input[name='Criteria1Score']").each(function() { 
    if (this.value == "Good") { 
     //do something with this input 
    } 
}); 
0
$("input[value='Good']").attr("id"); 

I f chcesz wybrać wejście od jego wartości

0

Można spróbować

var selected_Id = $('input[name="Criteria1Score"]:selected').attr('id'); 

EDIT: Niestety nie zobaczyć drugą część. Jeśli chcesz sprawdzić wartość == dobry można zrobić

if ($('input[name="Criteria1Score"]:selected').val() == 'Good') { 
    //do something 
} 
0

Dostałem go za pomocą sprawdzane.

var selected_Id = $('input[name="Criteria1Score"]:checked').attr('id'); 

if ($('input[name="Criteria1Score"]:checked').val() == 'Good') { 
    //do something 
}