2016-11-17 168 views
1

https://jsfiddle.net/8g94ykta/jQuery的单选按钮并不仅仅在第二/第三次点击在第一次点击触发事件

单选框火灾事件,只只显示第一个结果。如何解决它?谢谢。

<input type="radio" name="group" checked="checked" value="first">A 
<input type="radio" name="group" value="second">B 
<input type="radio" name="group" value="third">C 
<p> 
<span id="result">-</span> 
</p> 



$('input[type="radio"][name=group]:checked').click(function(){ 
     if (this.value=='first') { 
      $("#result").text("first value");} 
     else if (this.value=='second') { 
       $("#result").text("second value");} 
     else if (this.value=='third') { 
       $("#result").text("third value");} 

    }); 

回答

0

请试试这个:$('input[type="radio"][name=group]'),而不是$('input[type="radio"][name=group]:checked')

您需要触发click事件所有radio元素

$('input[type="radio"][name=group]').click(function(){ 
    if (this.value=='first') { 
     $("#result").text("first value");} 
    else if (this.value=='second') { 
     $("#result").text("second value");} 
    else if (this.value=='third') { 
     $("#result").text("third value");}     
}); 
0

你的选择只是附加一个click处理程序当前选中的元素,所以它只会在你单独点击该元素时触发。您需要将其附加到所有元素上:

$('input[type="radio"][name=group]').click(function() { 
相关问题