获取表单提交的复选框值并使用jQuery存储在变量中

时间:2012-07-17 03:44:24

标签: javascript jquery forms checkbox

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

提交表单时,我想获取已选中复选框的值并将其存储在变量中 - 有人可以帮忙吗?

干杯!

克里斯

4 个答案:

答案 0 :(得分:4)

$("form").submit(function() {
    var aVariable = $('input.test[type="checkbox"]:checked', this).val();
});
如果在空的jQuery对象上调用,

.val()将返回undefined,如果没有选中复选框,则会出现这种情况。

答案 1 :(得分:1)

请尝试下面的代码解决方案:

注意:首先在标头标签上添加最新的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

上面做了上面的垃圾箱

答案 2 :(得分:1)

这将起作用

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

        return false;
    });
});

答案 3 :(得分:-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)