【问题标题】:Jquery radiobutton check and uncheckJquery单选按钮选中和取消选中
【发布时间】:2012-01-03 13:29:45
【问题描述】:

我在一个组中有几个单选按钮,其中一个是:

<input type='radio' id='other' name='Group'></input>
<label for='other'>Other:</label>

我想这样做,以便在选中按钮时收到警报。当单选按钮变为未选中时,在被选中后(通过选择另一个按钮)我想收到不同的警报消息。

JQuery(这不起作用):

$('input:radio[id="other"]').change(
    function(){
        if ($(this).is(':checked')) {
            alert("checked");
        }
        if ($(this).is(':notchecked')) {
            alert("notchecked");
        }           
    }
);

【问题讨论】:

  • 用这段代码,它显示了什么?
  • @ianace 被选中的部分正在正确显示警报,但是当我“取消选中”按钮时,什么也没有发生

标签: jquery radio-button


【解决方案1】:

您应该为单选组而不是每个按钮编写更改事件。然后看看哪个单选按钮被选中了

这是 jsFiddle 参考。 http://jsfiddle.net/uAR6e/

【讨论】:

  • 这成功了!我应该张贴所有的按钮,但这是一个很好的开始。我会在 4 分钟内接受您的回答。谢谢!
【解决方案2】:

试试这个。正如@JQone 建议的那样,您需要将该功能应用于每个按钮:

$('input:radio[name="Group"]').change( function(){
    if ($('#other').is(':checked')) {
        alert("checked");
    } else {
        alert("notchecked");
    }
});

http://jsfiddle.net/zZPcH/ 的工作示例

【讨论】:

  • 这些都不起作用。第一个在检查后立即产生 2 个警报。当按钮模糊时,第二个永远不会显示未检查警报
  • 啊,我还以为是复选框,而不是单选按钮。请参阅下面的@JQone 的答案。我会更新我的代码...
【解决方案3】:
if ($(this):not(:checked)) {
   alert("notchecked");
 }

【讨论】:

    猜你喜欢
    • 2011-09-05
    • 1970-01-01
    • 2013-10-01
    • 1970-01-01
    • 2018-08-29
    • 2011-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多