我得到的代码是这样的:

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

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

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


当前回答

当框没有被选中时,上面的工作对我来说都没有抛出错误,所以我做了一些沿着这些线的事情(onclick和复选框函数仅用于演示目的,在我的用例中,它是一个更大的表单提交函数的一部分):

函数复选框(){ Var检查= false; if (document.querySelector('#opt1:checked')) { 选中= true; } . getelementbyid(“味精”)。innerText =已检查; } <input type="checkbox" onclick="checkbox()" id="opt1"> <span id="msg">单击方框</span>

其他回答

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

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

您可以通过jQuery或JavaScript使用以下方法来检查复选框是否被单击。

$('.messageCheckbox').is(":checked"); // jQuery
document.getElementById(".messageCheckbox").checked //JavaScript

在jQuery中获取检查值:

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

$(document).ready(function() { var ckbox = $("input[name='ips']"); var chkId = ''; $('input').on('click', function() { if (ckbox.is(':checked')) { $("input[name='ips']:checked").each ( function() { chkId = $(this).val() + ","; chkId = chkId.slice(0, -1); }); alert ( $(this).val() ); // return all values of checkboxes checked alert(chkId); // return value of checkbox checked } }); }); <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <input type="checkbox" name="ips" value="12520"> <input type="checkbox" name="ips" value="12521"> <input type="checkbox" name="ips" value="12522">

如果您想使用jQuery获取所有复选框的值,这可能会有所帮助。这将解析列表,并根据所需的结果执行其他代码。顺便说一下,出于这个目的,我们不需要用括号[]来命名输入。我没讲。

  $(document).on("change", ".messageCheckbox", function(evnt){
    var data = $(".messageCheckbox");
    data.each(function(){
      console.log(this.defaultValue, this.checked);
      // Do something... 
    });
  }); /* END LISTENER messageCheckbox */

在纯javascript中:

function test() {
    var cboxes = document.getElementsByName('mailId[]');
    var len = cboxes.length;
    for (var i=0; i<len; i++) {
        alert(i + (cboxes[i].checked?' checked ':' unchecked ') + cboxes[i].value);
    }
}
function selectOnlyOne(current_clicked) {
    var cboxes = document.getElementsByName('mailId[]');
    var len = cboxes.length;
    for (var i=0; i<len; i++) {
        cboxes[i].checked = (cboxes[i] == current);
    }
}