无法取消选中单选按钮

时间:2012-05-26 07:08:30

标签: jquery radio-button

当我点击radion按钮时,它总是检查。我无法取消选中radion按钮并尝试How to check/uncheck radio button on click?此链接。

问题

我只能检查一次,一旦我点击取消选中它总是取消选中无法正常工作 代码

  <input value='' type='radio' id='one' onClick="getCurrentLocation()"/>

   $('input[type=radio]').click(function(){

    if (this.previous) {
        this.checked = false;
    }
    this.previous = this.checked;
});

4 个答案:

答案 0 :(得分:1)

最简单的方法是使用相同的name属性input

示例:

<input name="myname" value='' type='radio' id='one' onClick="getCurrentLocation()"/>
<input name="myname" value='' type='radio' id='two' onClick="getCurrentLocation()"/>

<强> DEMO

由于您需要一次单独检查,因此最好使用复选框。

<input name="myname" value='' type='checkbox' id='one' onClick="getCurrentLocation()"/>
<input name="myname" value='' type='checkbox' id='two' onClick="getCurrentLocation()"/>

答案 1 :(得分:1)

这是你唯一的单选按钮吗?

开发单选按钮是为了保持一组可能的状态。

因此,如果只有一个单选按钮 - 请使用复选框进行更改。

如果您有多个选项 - 请选择一个默认选项以取消选中当前选中的内容。 但是如果你点击该套装中的另一个收音机,它将被检查而不需要特殊的代码。

(据我记得,没有办法在鼠标点击它的情况下取消选中浏览器中的单选按钮,所以我不希望脚本中出现这样的行为)

对于复选框,您无需特殊代码即可在点击时取消选中 - 这是所有浏览器中默认行为的唯一行为!

如果它只是一个dessign问题,那么你可以使用IMG的空和已选中的单选按钮,并点击更改图像。在这种情况下,您可以将状态保持在隐藏的输入字段中。

但这会让你的用户感到困惑......

答案 2 :(得分:0)

这就是他们的工作方式。单选按钮应该是用户分组,您可以在其中进行选择。如果您想要一个可以切换的按钮,请使用复选框。

如果您尝试使用单选按钮模仿复选框,则只会让用户感到困惑。

答案 3 :(得分:0)

试试这个,

标记:

<input value='' type='radio' id='one' onClick="getCurrentLocation()"/>

jQuery的,

var flag = 0;
$('input[type=radio]').click(function(){
    if(flag === 0)
    {
      $(this).prop('checked', true);              
      flag = 1;
    }
    else if(flag == 1)
    {
      $(this).prop('checked', false);
      flag = 0;        
    }

});

由于您使用id并且只有一个单选按钮直接调用它,因此您无需使用this

虽然,我建议你像其他人一样使用checkbox

Demo

相关问题