通过jQuery提交复选框

时间:2011-11-10 15:33:34

标签: jquery checkbox

在我工作的表格中有很多复选框。我想使用jquery ajax,以便每次用户点击复选框时发布值。它应该像下面的代码,但我不确定。它不起作用。

<script type="text/javascript" >
$(function() {
$(".autosubmit_checkbox").click(function() {

    var value = $(this).val();
    var name = $(this).attr('name');;
    var dataString = 'value=' + value + '&name=' + name;

    $.ajax({
        type: "POST",
        url: "URL",
        data: dataString,
        success: function(){
            something;
        }
    });

    return false;
});
});
</script>

4 个答案:

答案 0 :(得分:0)

<script type="text/javascript" >
$(function() {
$(".autosubmit_checkbox").click(function() {

    var value = $(this).is(':checked')?"1":"0";
    var name = $(this).attr('name');;
    var dataString = 'value=' + value + '&name=' + name;

    $.ajax({
        type: "POST",
        url: "URL",
        data: dataString,
        success: function(){
            something;
        }
    });

    return false;
});
});
</script>

答案 1 :(得分:0)

var value = ($(this).is(':checked')) ? 1 : 0;

答案 2 :(得分:0)

如果要以“通常”方式在查询字符串中提交复选框的值,则必须构建单个请求参数:

var dataString = $(this).attr('name') + "=" + encodeURIComponent($(this).val());

serialize()将为您计算此字符串,但如果取消选中该复选框,则返回空字符串,这显然不是您想要的。

答案 3 :(得分:0)

使用$(this).is(':checked')代替$(this).val()并避免返回false,因为它会阻止实际检查复选框(除非这是您想要的行为)。