1

抱歉,这个问题的标题可能很糟糕 - 我努力想出更好的东西!

作为更广泛应用程序的一部分,我正在编写一个简单的“待办事项”列表,并且由于我有限的 jQuery/Javascript 知识而遇到了一个绊脚石。

该页面具有许多复选框 - 每个“任务”旁边都有一个。我需要做的是每次选中或取消选中复选框时触发一个'get'事件('get'将触发一个保存状态的后端脚本 - 即选中将其保存为'done',而取消选中它将将其保存为“待处理”)。

到目前为止,当用户与复选框交互时,我已经触发了一个警报,现在已经获得了显示复选框的值(这是任务的简单 ID)的警报,但我坚持我如何将所有这些放在一起来触发 .get

这是我到目前为止所拥有的...

<script>
$(document).ready(function(){
$(":checkbox").change(function(){
    if($(this).attr("checked"))
    {
        alert($(this).is(':checked'))
    }
    else
    {
        alert($(this).val());
    }
});
});
</script>

<input type="checkbox" value="#itemID#">

非常感谢指点!

4

2 回答 2

4

可以做一个AJAX请求如下:

$(":checkbox").change(function(){
     var data= { 
         id: this.value,
         status : this.checked ? 'done' :'pending'
     } ;
    $.get( 'serverFile.php', data, function(response){
         /* ajax is complete here, can do something with response if needed*/
     })

});

在服务器上,您会像收到带有字段名称的表单一样接收数据,id并且status

于 2013-01-02T23:38:29.963 回答
1

你基本上拥有它,只需使用 jQuerys $.get()

<script>
$(document).ready(function(){
    $(":checkbox").change(function() {
        $.get('/url/to/response', { id: this.value, is_checked: this.checked });
    });
});
</script>

<input type="checkbox" value="#itemID#">
于 2013-01-02T23:37:08.293 回答