2

使用带有“测试”类的多个复选框的表单(只能检查其中一个,但类似于使用单选按钮 - 顺便说一句,不是我的想法!)。

提交表单后,我想获取选中的复选框的值并将其存储在变量中 - 任何人都可以在这里提供帮助吗?

干杯!

克里斯

4

4 回答 4

4
$("form").submit(function() {
    var aVariable = $('input.test[type="checkbox"]:checked', this).val();
});

.val()如果在空的 jQuery 对象上调用,则返回undefined,如果没有选中复选框,则会出现这种情况。

于 2012-07-17T03:47:37.730 回答
1

请在代码箱上尝试以下解决方案:

注意:首先在 header 标签上添加最新的 jquery.js javascript 文件。

HTML:

<form id="frm1" method="post">
  <input type="radio" class="test" checked="checked" value="radio1">
  Radio1
  <input type="radio" class="test" checked="checked" value="radio2">
  Radio2
  <input type="radio" class="test" value="radio3">
  Radio3
  <br/>
  <input type="checkbox" class="test" checked="checked" value="check1">
  Check1
  <input type="checkbox" class="test" value="check2">
  Check2
  <input type="checkbox" class="test" checked="checked" value="check3">
  Check3
  <br/>
  <input type="submit" value="submit" />
</form>

脚本标签中的 jQuery:

$(function() {

    $("#frm1").submit(function() {
        $("input.test[type=checkbox]:checked").each(function() {
            alert($(this).val());
        });

        return false;
    });
});

我已经在http://codebins.com/bin/4ldqpap上完成了 bin

于 2012-07-17T05:54:26.900 回答
1

这会起作用

$(function() {
    $("#frm1").submit(function() {
        $("input.test[type=checkbox]:checked").each(function() {
            alert($(this).val());
        });

        return false;
    });
});
于 2013-04-12T11:13:19.167 回答
-1
var inputElements = document.getElementsByClassName('messageCheckbox');
    var checkedValue=[];
    for(var i=0; inputElements[i]; ++i){
       console.log(inputElements[i]);
       if(inputElements[i].checked){
           checkedValue.push(inputElements[i].value);
       }
    }
alert(checkedValue)
于 2017-03-09T09:57:15.040 回答