试图通过ajax(jQuery)提交多个复选框值

时间:2011-09-17 23:01:40

标签: jquery

我有一个包含多个复选框的页面。我需要选择所有并通过ajax提交。

function SelectedContactsMult(actMult) {    
    var data = { "delCont[]" : [] };
    $(".chkbx").each(function() {
        data["delCont[]"].push($(this).val());
    });     
    $.post("ajax.php?op="+actMult, data);
}

我到了我的ajax页面,但是我觉得我没有任何价值......我在这里缺少什么?

2 个答案:

答案 0 :(得分:3)

var arr=[];

$.each($("input[type='checkbox']"),function(){
    arr.push($(this).val());
});

    $.post("ajax.php?op="+actMult, {data:arr});

答案 1 :(得分:1)

假设您有实际的复选框输入,例如:

<input type="checkbox" name="delCont[0]" class="chkbox" /> Choice 1
<input type="checkbox" name="delCont[1]" class="chkbox" /> Choice 2
...

然后您可以将它们序列化为:

function SelectedContactsMult(actMult) {        
    $.post("ajax.php?op="+actMult, $('.chkbox').serialize() );
}

请注意,每个复选框都包含所选内容的“id”非常重要,因为未选中的复选框将不会回发,您需要能够区分选中的复选框。名称可能与选择有关,而不是通用的“数组”符号,但重要的是要知道哪些名称,而不仅仅是某些数字已被选中。