Możliwy duplikat:
sprawdzanie określonego przycisku opcji jest zaznaczone
W tej chwili mam te 2 przyciski radiowe, aby użytkownik mógł zdecydować, czy potrzebuje przesyłki w cenie, czy nie:
<input type="radio" id="postageyes" name="postage" value="Yes" /> Yes
<input type="radio" id="postageno" name="postage" value="No" /> No
Muszę użyć Jquery, aby sprawdzić, czy przycisk opcji „tak” jest zaznaczony, a jeśli tak, wykonaj funkcję dołączania. Czy ktoś mógłby mi powiedzieć, jak bym to zrobił, proszę?
Dzięki za wszelką pomoc
edytować:
Zaktualizowałem mój kod do tego, ale to nie działa. czy robię coś źle?
<script type='text/javascript'>
// <![CDATA[
jQuery(document).ready(function(){
$('input:radio[name="postage"]').change(function(){
if($(this).val() == 'Yes'){
alert("test");
}
});
});
// ]]>
</script>
jquery
html
radio-button
Daniel H.
źródło
źródło
Odpowiedzi:
Albo powyższe - znowu - używając nieco mniej zbędnego jQuery:
Zmieniona (poprawiona) jQuery:
Pokaż fragment kodu
Demo JS Fiddle .
I dalej, łagodna aktualizacja (ponieważ edytuję, aby uwzględnić Snippety, a także linki JS Fiddle), aby owinąć
<input />
elementy<label>
s - pozwala na kliknięcie tekstu, aby zaktualizować odpowiedni<input />
- i zmienić sposób tworzenia treść do dołączenia:Demo JS Fiddle .
Ponadto, jeśli chcesz tylko pokazać zawartość w zależności od tego, który element jest sprawdzony przez użytkownika, niewielka aktualizacja, która przełączy widoczność za pomocą wyraźnego pokazania / ukrycia:
I wreszcie, używając tylko CSS:
Demo JS Fiddle .
Bibliografia:
:checked
selektor .~
kombinator rodzeństwa ( ) .appendTo()
.change()
.:checked
selektor .filter()
.is()
.:radio
selektor .remove()
.text()
.toggle()
.val()
.źródło
Spróbuj tego
źródło
Coś takiego:
źródło
$(...).length
zamiast tego użyć .#postageyes:checked
czy$('#postageyes').is(':checked')
?is()
zwraca wartość logiczną. Więc dzwonienie.length()
jest zepsute. Z dokumentacji: „W przeciwieństwie do innych metod filtrowania .is () nie tworzy nowego obiektu jQuery. Zamiast tego umożliwia testowanie zawartości obiektu jQuery bez modyfikacji”. - api.jquery.com/isTo nasłuchuje zdarzenia zmiany na przyciskach radiowych. W momencie kliknięcia przez użytkownika
Yes
zdarzenie zostanie uruchomione i będziesz mógł dołączyć wszystko, co chcesz, do DOM.źródło
źródło
źródło
$("#postageyes:checked"
zawsze zwraca prawdę? Czy nie musiałbyś używać,.length
aby to działało?Spróbuj tego:
źródło
źródło
To posłucha zmienionego wydarzenia. Próbowałem odpowiedzi od innych, ale te nie działały dla mnie i ostatecznie ten zadziałał.
źródło