如果单选按钮组的所选收音机的类别不是"红色"如何隐藏div?
<form>
<input class="blue" name="model" value="XTC_01" type="radio">
<input class="red" name="model" value="XTC_02" type="radio">
<input class="red" name="model" value="XTC_03" type="radio">
<input class="blue" name="model" value="XTC_04" type="radio">
</form>
<div id="red_info">Hidden if selected radio class is not "red".</div>
感谢您的建议。
答案 0 :(得分:1)
试试这个:
$('input:radio[name="model"]').change(function() {
$('#red_info').toggle(this.className == 'red');
});
答案 1 :(得分:0)
检查jsFiddle上的示例http://jsfiddle.net/vijaypatel/ZwmdJ/
var className = $('input[name="model"]:checked').attr('class');
现在检查className
是否为红色并进一步处理。
答案 2 :(得分:0)
你可以这样做:
$('input[name="model"]').change(function() {
var val = $("input[type='radio']:checked").attr('class');
if(val == "red") {
$("#red_info").hide();
} else {
$("#red_info").show();
}
});
<强> Fiddle 强>
答案 3 :(得分:0)
您可以使用以下方法简单地隐藏具有红色类的已选中单选按钮的div。
$("input[type='radio'][class='red']:checked").hide('#red_info')
答案 4 :(得分:0)
假设您的代码很小
,而不是使用大量的伪选择器$('input:radio').click(function(){
if($(this).hasClass('red')){
$('#red_info').show();
} else {
$('#red_info').hide();
}
});
KISS是你应该去的地方!
答案 5 :(得分:-1)
if($("form>:not(.red)").is(":selected")){
$("#red_info").hide();
}
无论如何,我同意Mario De Schaepmeester的观点。这很简单,jQuery就是一种矫枉过正的行为。