我得到的代码是这样的:

<input class="messageCheckbox" type="checkbox" value="3" name="mailId[]">
<input class="messageCheckbox" type="checkbox" value="1" name="mailId[]">

我只需要Javascript来获取当前选中的复选框的值。

编辑:要添加,将只有一个复选框。


当前回答

<input class="messageCheckbox" type="checkbox" onchange="getValue(this.value)" value="3" name="mailId[]">

<input class="messageCheckbox" type="checkbox" onchange="getValue(this.value)" value="1" name="mailId[]">
function getValue(value){
    alert(value);
}

其他回答

以上这些方法对我来说都没用,但只要使用以下方法即可:

document.querySelector('.messageCheckbox').checked;

在我的项目中,我通常使用以下片段:

var type[];
$("input[name='messageCheckbox']:checked").each(function (i) {
                type[i] = $(this).val();
            });

而且效果很好。

如果你使用的是语义UI React,数据会作为第二个参数传递给onChange事件。

因此,您可以按以下方式访问选中的属性:

<Checkbox label="Conference" onChange={(e, d) => console.log(d.checked)} />

这并不能直接回答这个问题,但可能会对未来的访问者有所帮助。


如果您想让一个变量始终是复选框的当前状态(而不是必须不断检查其状态),您可以修改onchange事件来设置该变量。

这可以在HTML中完成:

<input class='messageCheckbox' type='checkbox' onchange='some_var=this.checked;'>

或使用JavaScript:

cb = document.getElementsByClassName('messageCheckbox')[0]
cb.addEventListener('change', function(){some_var = this.checked})

用这个:

alert($(".messageCheckbox").is(":checked").val())

这假设要检查的复选框具有类“messageCheckbox”,否则您必须检查输入是否为复选框类型,等等。