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

相关文章

操作步骤 1、进入elasticsearch的plugin,进入ik。进入config。 2、在config下面建立以.dic为后缀的字典...
lengend data数据中若存在'',则表示换行,用''切割。
代码实现 option = { backgroundColor: '#080b30', tooltip: { trigger: &...
问题原因 原因在于直接在js中取的变量并复制给var变量。 于是就变成这样。 解决办法 var data = &#...
前言 最近做了一个调查问卷导出的功能,需求是将维护的题目,答案,导出成word,参考了几种方案之后,选...
对于很多人来说,用字符编码都是熟能生巧,而不清楚为什么是那样的字符编码,所以我在这列了一个表,翻...