jQuery Ajax复选框状态
我的页面上有一些复选框,我希望通过ajax将它们的状态发送回数据库。我知道如何将jquery与ajax结合使用,但我不知道如何获得选中状态,包括选中状态和未选中状态以及复选框的id,以便将其发送回服务器jQuery Ajax复选框状态,jquery,ajax,checkbox,state,Jquery,Ajax,Checkbox,State,我的页面上有一些复选框,我希望通过ajax将它们的状态发送回数据库。我知道如何将jquery与ajax结合使用,但我不知道如何获得选中状态,包括选中状态和未选中状态以及复选框的id,以便将其发送回服务器 有什么想法吗?很容易找到复选框: $(':checkbox').whatever() 诀窍在于,HTML中的复选框只有在选中时才有意义。如果没有检查它们,您会告诉服务器什么 好吧,如果你有一个约定要处理(可能总是在选中时发送“true”,而在未选中时发送“false”),那么接下来你必须决定如
有什么想法吗?很容易找到复选框:
$(':checkbox').whatever()
诀窍在于,HTML中的复选框只有在选中时才有意义。如果没有检查它们,您会告诉服务器什么
好吧,如果你有一个约定要处理(可能总是在选中时发送“true”,而在未选中时发送“false”),那么接下来你必须决定如何将它们发送到你的服务器。您可以使用jQueryparam
函数将列表转换为参数字符串:
var params = $.param($(':checkbox').map(function() {
return { name: this.id, value: !!this.checked };
}));
这将为您提供一个字符串,可以将其固定到URL上,或者通过$.ajax
作为数据发送
if ($("#yourCheckboxID").is(":checked")) {
// checkbox is checked
} else {
// checkbox is not checked
}
我会做这项工作的。类似这样的事情:
<script type="text/javascript">
$(document).ready(function(){
$("input:checkbox").change(function() {
if($(this).is(":checked")) {
$.ajax({
url: 'on_off.aspx',
type: 'POST',
data: { strID:$(this).attr("id"), strState:"1" }
});
} else {
$.ajax({
url: 'on_off.aspx',
type: 'POST',
data: { strID:$(this).attr("id"), strState:"0" }
});
}
});
});
</script>
$(文档).ready(函数(){
$(“输入:复选框”).change(函数(){
如果($(this).is(“:checked”){
$.ajax({
url:“on_off.aspx”,
键入:“POST”,
数据:{strID:$(this.attr(“id”),strState:“1”}
});
}否则{
$.ajax({
url:“on_off.aspx”,
键入:“POST”,
数据:{strID:$(this.attr(“id”),strState:“0”}
});
}
});
});
结合您的解决方案和Ain接受的答案:
<script type="text/javascript">
$(document).ready(function(){
var isChecked = $("input:checkbox").is(":checked") ? 1:0;
$.ajax({
url: 'on_off.aspx',
type: 'POST',
data: { strID:$("input:checkbox").attr("id"), strState:isChecked }
});
});
</script>
$(文档).ready(函数(){
var isChecked=$(“输入:复选框”)。是否(“:选中”)?1:0;
$.ajax({
url:“on_off.aspx”,
键入:“POST”,
数据:{strID:$(“输入:复选框”).attr(“id”),strState:isChecked}
});
});
将更改事件中的内容添加回合并的解决方案。希望在每次更改复选框时触发此复选框
<script type="text/javascript">
$(document).ready(function(){
$("input:checkbox").change(function() {
var isChecked = $("input:checkbox").is(":checked") ? 1:0;
$.ajax({
url: 'on_off.aspx',
type: 'POST',
data: { strID:$("input:checkbox").attr("id"), strState:isChecked }
});
});
});
</script>
$(文档).ready(函数(){
$(“输入:复选框”).change(函数(){
var isChecked=$(“输入:复选框”)。是否(“:选中”)?1:0;
$.ajax({
url:“on_off.aspx”,
键入:“POST”,
数据:{strID:$(“输入:复选框”).attr(“id”),strState:isChecked}
});
});
});