jquery的选择从6点形成一个无线电(jquery select only one radio f

2019-10-17 02:33发布

我有6点的形式和各形式具有2个单选按钮。

我希望用户体验是,他们只能一次选择1个单选按钮。 因此,当他们穿越到了另一种形式的检查单选按钮。 所有其他单选按钮将取消选择。

这是我在我的attemps至今。

$(document).ready(function () {                 
  $('input[type=radio]').prop('checked', false);

  $('input[type=radio]').each(function (i) {                        
    $(this).not($('radio:checked')).prop('checked', false);                     
  });                   
});

我的想法一直在取消开始按钮所有。 但在那之后我在我的逻辑混乱。

我想说

如果这个电台是检查,取消所有其他无线电设备。

而在英国它用一句话适合,我怎样才能得到它变成jQuery的?

Answer 1:

$('input[type=radio]').on('change', function(){
    $('input[type=radio]').not(this).prop('checked', false);
});

小提琴



Answer 2:

从本质上讲,你不能“取消选中”单选按钮 - 因此,所有你需要做的就是在“click”事件,取消选择所有无线电元件和选择被点击的一个。

$('input[type=radio]').on('click',function(e){
   $('input[type=radio]').prop('checked','');
   $(this).prop('checked','checked');
   e.preventDefault();
});

的jsfiddle



Answer 3:

试试这个(见演示: http://jsfiddle.net/3xD7V/1/ ):

$(document).ready(function () {
  $('input[type=radio]').prop('checked', false);
  $('input[type=radio]:first').prop('checked', true)

  $('input[type=radio]').click(function (event) {
    $('input[type=radio]').prop('checked', false);
    $(this).prop('checked', true);

    event.preventDefault();
  });
});


文章来源: jquery select only one radio from 6 forms