获取按钮组中所选广播的类别

时间:2013-05-06 11:03:59

标签: jquery

如果单选按钮组的所选收音机的类别不是"红色"如何隐藏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>

感谢您的建议。

6 个答案:

答案 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就是一种矫枉过正的行为。

相关问题