0

当用户单击两组 RADIO BUTTONS 上的 On 和 On 值时,我试图触发一个事件......

因此,当用户单击第一个 ON 时,它会说和警报出现,说 ON

当用户点击关闭时,会出现一个显示关闭的警报

当用户单击第二个 ON 时,它会弹出一个警报,显示 ON1 当他们单击关闭时,它会显示 OFF2

当他们点击 ON 和 ON 时,它会说一些不同的东西,比如 ON AND ON

这是js

 $('.radioButton').click(function(e){
   selected = $(this).val();
   if (selected === 'on'){
     alert('on')
   }

   else if (selected === 'off'){
     alert('off')
   }

   else if (selected === 'on1'){
     alert('on1')
   }

   else if (selected === 'off1'){
     alert('off1')
   }

   else if (selected === 'on' && 'on1'){
     alert('on and on')
   }

  });

这是小提琴

http://jsfiddle.net/d0okie0612/3u4Hj/

4

1 回答 1

2

首先,给单选按钮一个名称属性来区分集合:

<input name="one" class="radioButton" id="r1" type="radio" value="on">
<input name="one" class="radioButton" type="radio" value="off">
<input name="two" class="radioButton" type="radio" value="on1">
<input name="two" class="radioButton" type="radio" value="off1">

然后,您可以检查为每个集合检查的值,如下所示:

var oneOn = $('input:radio[name=one]:checked').val();
var twoOn = $('input:radio[name=two]:checked').val();

最后:

if(oneOn === 'on' && twoOn === 'on1') {
    alert("yes!");
}

您的原始方法无法工作,因为“选定”不能同时具有两个不同的值。

于 2013-03-26T23:26:00.560 回答