У меня есть несколько групп радиокнопок в форме, но мне интересно, если последняя выбрана радиокнопка в определенной группе, я попробовал это:
$('#myform').submit(function() {
if ($('input[name$="cats"]:last', this).is(':checked')) {
alert ('the last button');
return false;
}
});
Не работает ... Надеюсь, ваша помощьСпасибо и извините за мой английский xd
РЕДАКТИРОВАТЬ ...
странно, у меня нет ошибок в консоли ошибок или firebug.
Моя форма широкая, но это пример:
<form id="myform" action="">
<fieldset class="left">
<legend>My Dogs</legend>
<p><input name="dogs" type="radio" value="Doberman" class="radio" /> Bobby</p>
<p><input name="dogs" type="radio" value="German Shepherd" /> Drake</p>
<p><input name="dogs" type="radio" value="schnauzer" /> Bunchie</p>
<p><input name="dogs" type="radio" value="Others" /> Other</p>
<p><input name="otherdog" id="otherdog" type="text" class="text" /></p>
</fieldset>
<fieldset class="right">
<legend>My Cats</legend>
<p><input name="cats" type="radio" value="Balinese" /> Kitty</p>
<p><input name="cats" type="radio" value="Bengal" /> Chucky</p>
<p><input name="cats" type="radio" value="Chausie" /> Gordon</p>
<p><input name="cats" type="radio" value="Others" /> Other</p>
<p><input name="othercat" id="othercat" type="text" class="text" /></p>
</fieldset>
</form>
И мой JS:
$(document).ready(function() {
$('#myform').submit(function() {
if ($(this).find('input[name$="dogs"]:checked').length == 0) {
alert('Select dogs.');
return false;
}
if ($('input[name$="dogs"]:last', this).is(':checked')) {
alert ('this is the last');
return false;
}
});
if ($(this).find('input[name$="cats"]:checked').length == 0) {
alert('Select cats.');
return false;
}
if ($('input[name$="cats"]:last', this).is(':checked')) {
alert ('this is the last');
return false;
}
alert('all good :)');
return false;
});
});
единственное, что происходит, это то, что вы не вводите условие:
"if ($ ('input [name $ =" cats "]: last', this) .is (': checked')) {"