jQuery如果条件为单选按钮名称和值

时间:2014-06-22 07:18:59

标签: javascript jquery

我有一个像

这样的单选按钮
<input type="radio" name="user-type" value="Store">
<input type="radio" name="user-type" value="Brand">

我尝试编写像

这样的jQuery脚本
if($("input[name=user-type]:checked").val()) == "Brand"){
     $(".showstore").hide();
     $(".showbrand").show();
}

并尝试了

if($("input[name=user-type]:checked").val()) == "Brand").click(function(){
       $(".showstore").hide();
     $(".showbrand").show();
});

并尝试了

if ( $("input[name=user-type]:radio").val() == "Brand"){
     $(".showstore").hide();
     $(".showbrand").show();
}

这些都没有奏效,任何改正都表示赞赏。感谢。

UPDATE1

我试着用这种方式隐藏了

if($("input[name=user-type]:checked").val() == "Brand"){
     $(".showstore").hide();
     $(".showbrand").show();
}
else if($("input[name=user-type]:checked").val() == "Store"){
     $(".showstore").show();
     $(".showbrand").hide();
}

7 个答案:

答案 0 :(得分:8)

尝试以下代码 - 它基本上在广播click上侦听name=user-type,并根据点击的单选按钮进行切换。

$(function () {
    $('.showstore').hide();
    $('.showbrand').hide();

    $("input[name=user-type]:radio").click(function () {
        if ($('input[name=user-type]:checked').val() == "Brand") {
            $('.showstore').hide();
            $('.showbrand').show();

        } else if ($('input[name=user-type]:checked').val() == "Store") {
            $('.showstore').show();
            $('.showbrand').hide();

        }
    });
});

工作小提琴:http://jsfiddle.net/FpUSH/1/

答案 1 :(得分:6)

这很简短,有效!

$('input:radio').change(
function(){
    if($(this).val() == 'Store'){
        $('.showbrand').hide();
        $('.showstore').show();
    }
    else{
        $('.showstore').hide();
        $('.showbrand').show();
    }
}
);  

答案 2 :(得分:2)

您有一个语法错误,您已关闭parenthesis错误地属于if语句

if($("input[name=user-type]:checked").val() == "Brand"){
     $(".showstore").hide();
     $(".showbrand").show();
}

DEMO

$("input[name=user-type]").change(function(){
  $(".showstore").toggle(this.value === "Store"); 
  $(".showbrand").toggle(this.value === "Brand"); 
});

NEW DEMO

答案 3 :(得分:2)

只有一些语法错误:

$("input[name='user-type']:checked").each(function(){
    if($(this).val() == "Brand"){
        $(".showstore").hide();
        $(".showbrand").show();
    }
});

答案 4 :(得分:2)

您需要像这样检查:

if($('input[name="user-type"]:checked').val() === "Brand")
{
       alert("Test");
       // do something here
}

Working Fiddle Example

答案 5 :(得分:1)

demo试试这个,

if(jQuery("input:radio[name='user-type']:checked").val()=="Brand"){
   //do your stuff
}

答案 6 :(得分:0)

肯定@karthikr有一个很好的功能方法。

这是“是/否”无线电按钮的一个示例,以防您根据单选按钮选择禁用元素

$("input[name=button-name]:radio").click(function () {
    if ($('input[name=input-radio-name]:checked').val() == "Yes") {
        $( "element" ).removeClass('btn-display-none');
        $( "element" ).prop('disabled', false);

    } else {
        $( "element" ).addClass('btn-display-none'));
        $( "element" ).prop('disabled', true);

    }
});

来源:用于自己的项目