JQuery присоединиться к двум радио
Как я могу подключить радио с разными именами? У меня что-то подобное
- Cash (name=payment)
- Card (name=payment)
-- Visa (name=paymentCard)
-- MasterCard (name=paymentCard)
И когда я нажму "Visa", я также хочу проверить "Карта" с помощью jQuery, и, конечно, когда я нажму после этого "Наличные", он удалит проверенные с радио с именем =paymentCard.
HTML-код:
<label><input type="radio" name="INPUT-payment" value="Cash" checked="checked">Cash</label><br>
<label><input type="radio" name="INPUT-payment" value="Card" class="card">Card</label><br>
<label><input type="radio" name="INPUT-paymentCard" value="Visa">Visa</label><br>
<label><input type="radio" name="INPUT-paymentCard" value="MasterCard">MasterCard</label>
JQuery код:
$('input[name=INPUT-paymentCard]').on('click', function(){
$('input[value=Card').attr('checked', true);
});
$('input[name=INPUT-payment]').on('click', function(){
$('input[name=INPUT-paymentCard]').removeAttr('checked');
});
С этим кодом, когда я выберу Visa, он проверяет Карту, но когда я проверю Наличные, а затем снова Visa, он больше не проверяет Карту.
ссылка на JSFiddle: http://jsfiddle.net/cRQB2/
1 ответ
Решение
Пытаться
<input name="payment" type="radio" class="payment cash"/> Cash
<input name="payment" type="radio" class="payment card"/> Card
<input name="paymentCard" type="radio" class="paymentCard visa"/> Visa
<input name="paymentCard" type="radio" class="paymentCard Master"/> MasterCard
а также
jQuery(function(){
var $payments = $('input.payment').change(function(){
if(!$(this).hasClass('card')){
$cards.prop('checked', false);
}
})
var $cards = $('input.paymentCard').change(function(){
if(this.checked){
$payments.filter('.card').prop('checked', true);
}
})
})
Демо: скрипка