javascript – 取消选择无线电输入选择

前端之家收集整理的这篇文章主要介绍了javascript – 取消选择无线电输入选择前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在我的应用程序的一部分中,我检查重复的无线电输入选择并恢复它已经选择到早期选择.

这是我的HTML代码..

dio" name="A" checked="checked" onclick="return check();" />
dio" name="A" onclick="return check();" />


dio" name="B" onclick="return check();" /> dio" name="B" checked="checked" onclick="return check();" />

这是javascript代码

function check() {
    //logic to check for duplicate selection
    alert('Its already selected');
    return false;
}

这是demo
上面的代码工作正常.问题是最初未检查输入.在这种情况下,无线电输入选择不会恢复为未选中状态.

注意:处于选中状态时,返回false显示和警告,并将复选框设置为初始检查状态.但是当最初处于非检查状态时,这不起作用.

最佳答案
在DOM ready中,检查是否选中了任何单选按钮.如果选中任何单选按钮,请将计数器增加1.在单击单选按钮时,检查计数器值是否为1.如果是,则返回false,否则将计数器增加1.

试试这段代码,

HTML

dio" name="A" checked="checked" />
dio" name="A" />

dio" name="B" /> dio" name="B" />

JS

var counterA = 0;
var counterB = 0;
$(document).ready(function () {
    if ($("input:radio[name=A]").is(":checked") == true) counterA++;
    if ($("input:radio[name='B']").is(":checked") == true) counterB++;
});

$('input:radio[name=A]').click(function () {
    if (counterA == 1) {
        alert('already checked');
        return false;
    } else {
        counterA++;
    }
});
$('input:radio[name=B]').click(function () {
    if (counterB == 1) {
        alert('already checked');
        return false;
    } else {
        counterB++;
    }
});

看到这个DEMO

猜你在找的HTML相关文章