Php 我可以在同一个脚本上发布选中和未选中的框值吗
我希望在同一个脚本上同时获得选中框和未选中框的值。我在脚本中使用的方法不起作用,请帮助我克服这个问题。我想在不使用提交按钮的情况下获取多个复选框值。是否可以同时获取复选框值的两种状态Php 我可以在同一个脚本上发布选中和未选中的框值吗,php,jquery,Php,Jquery,我希望在同一个脚本上同时获得选中框和未选中框的值。我在脚本中使用的方法不起作用,请帮助我克服这个问题。我想在不使用提交按钮的情况下获取多个复选框值。是否可以同时获取复选框值的两种状态 $(“输入[type=checkbox]”)。在(“更改”,函数()上{ var-id=[]; var dis=[]; $('input[type=checkbox]:checked')。每个(函数(){ id.push($(this.val()); }); $('input[type=checkbox]:未选中
$(“输入[type=checkbox]”)。在(“更改”,函数()上{
var-id=[];
var dis=[];
$('input[type=checkbox]:checked')。每个(函数(){
id.push($(this.val());
});
$('input[type=checkbox]:未选中')。每个(函数(){
dis.push($(this.val());
});
//var allCheckboxes=$(“.form1”).find(“.checkboxes”)
//var unchecked=所有复选框。未选中(“:checked”);
dis=dis.toString();
ids=ids.toString();
$.ajax({
url:“dummeyodcheckbox.php”,
类型:“POST”,
async:true,
cache:false,
数据:({
值:ids,
未选中:dis
}),
数据类型:“文本”,
成功:功能(数据){
警报(“活动已提交”);
}
});
});代码>
序号
复选框
活动名称
1.
/>
生化需氧量2
3.
/>
生化需氧量
问题在于jQuery中没有:未选中的选择器。相反,您可以使用:not(:checked)
,如下所示:
$('input[type=checkbox]:not(:checked)').each(function() {
dis.push($(this).val());
});
我还建议您使用map()
使数组构建更加简洁,并且使用join()
数组而不是使用toString()
您还应该考虑从Ajax请求返回XML或JSON。代码>文本
很容易被空格不一致打破。您可以使用输入type=“hidden”
来存储复选框的值
$("input[type=checkbox]").on("change", function() {
var ids = $('input[type=checkbox]:checked').map(function() {
return this.value;
}).get();
var dis = $('input[type=checkbox]:not(:checked)').map(function() {
return this.value;
}).get()
$.ajax({
url: "dummyeodcheckbox.php",
type: "POST",
cache: false,
data: ({
value: ids,
unchecked: dis,
}),
dataType: "text",
success: function(data) {
console.log("activitysubmitted");
}
});
});