JavaScript收音机按钮和显示

时间:2012-03-18 12:47:53

标签: javascript jquery show

在单选按钮上选择是时,我试图显示div,但我无法使其工作。我的代码:

<input id="y" type="radio" name="experience" value="y"/>Yes
<input id="n" type="radio" name="experience" value="n"/>No

<style type="text/css">
.desc { display: none; }
</style>

<div id="yes" class="desc">
<p>You have Wielding Experience!</p>
</div>

<div id="no" class="desc">
<p>You have no Wielding Experience!</p>
</div>

<script type="text/javascript"> 
$(document).ready(function(){           
$("input[name='experience']").click(function(){
    if ($("input[name='experience']:checked").val() == 'y')
        $("#yes").show();      
    });
    });
</script>

我哪里错了?

4 个答案:

答案 0 :(得分:2)

radio替换为input

$("input[name='experience']").click(function() {
    if ($("input[name='experience']:checked").val() == 'y') {
        $("#yes").show();
    }
});

另见this example

P.S。:用<input ...>...</input>

替换所有<input ... />...

答案 1 :(得分:2)

选择一个单选按钮,你必须使用输入:无线​​电,而不仅仅是那样的无线电

$( “输入:无线​​电[@名称= '经验']”)

答案 2 :(得分:1)

我会写

if($(“input [name ='experience']:checked”)。val()=='y')

而不是

if($(“input [@ name ='location']:checked”)。val()=='y')

即没有@的输入和使用无线电的实际名称

但也许你的意思是

$(document).ready(function(){           
  $("input[name='experience']").click(function(e){
    if ($this).val() == 'y') {
        $("#yes").show();      
        $("#no").hide();      
    }
    else {
        $("#no").show();      
        $("#yes").hide();      
    }
  });
});

答案 3 :(得分:1)

$('#y').click(function(){
    $('#yes').show();
});