jquery检查无线电输入不工作

时间:2015-09-15 09:19:30

标签: jquery html radio-button

我在尝试使用JQuery检查无线电输入时遇到问题。我刚开始学习,所以请耐心等待。

我有4个单选按钮,我希望能够使用点击滚动浏览。问题是我只能获得第一个if语句才能工作。这是我的HTML:

<a class="back"> < </a>
  <input type="radio" name="radio-control" id="radio-1" checked="checked"/>
  <input type="radio" name="radio-control" id="radio-2"/>
  <input type="radio" name="radio-control" id="radio-3"/>
  <input type="radio" name="radio-control" id="radio-4"/>
<a class="next"> > </a>

和我的JQuery:

if($('#radio-1').is(':checked')) { 
  $('.next').click(function() {
    $("#radio-2").prop("checked", true)
  });
}
if($('#radio-2').is(':checked')) { 
  $('.next').click(function() {
    $("#radio-3").prop("checked", true)
  });
  $('.back').click(function() {
    $("#radio-1").prop("checked", true)
  });
}
});

这是在codepen上:http://codepen.io/anon/pen/LpGOqq

如果有人能提供一些意见,我们将不胜感激。

1 个答案:

答案 0 :(得分:1)

检查checked状态然后绑定事件是这样做的肮脏方式。

您可以为prev / next按钮设置简单的点击事件,其中您定位已检查的radio元素的prev / next元素并将其设置为true。像这样:

$('.next').click(function () {
    $(":checked").next().prop("checked", true)
});
$('.back').click(function () {
    $(":checked").prev().prop("checked", true)
});

<强> Working Demo