gpt4 book ai didi

php - 通过 ajax 发送未选中的复选框值

转载 作者:行者123 更新时间:2023-11-29 01:12:59 25 4
gpt4 key购买 nike

由于我编写的用于在 MySQL 中保存表单数据的通用函数,我遇到了一个复杂的问题。所有表单在序列化后通过 Ajax 发送:

$('.suggestSave, .buttonSave').on('submit', function(e) {
e.preventDefault();
var data = $(this).serialize();
...

然后我通过遍历值并创建保存在数据库中的数据来获取所有 POST 值:

        $data = array();
foreach ($_POST as $param_name => $param_val) {
if($param_name != 'action' && $param_name != 'patient' && $param_name != 'jsaction') {
$name = sanitize($param_name);
$value = sanitize($param_val);
$data[$name] = $value;
}
}

自然地,不会发送未选中的复选框。问题是如果它是空的,我想为这个复选框存储 Int 值 0 而不是 1。在 HTML 方面,我有一个经典的语法

   <input type="checkbox" value="1" name="c_name1" checked/>
<input type="checkbox" value="1" name="c_name2"/>

关于如何处理这个问题有什么建议吗?在一个复选框的情况下,我会检查后值是否为 set(),但由于我是通过循环获取名称和值的...我没有想法...

最佳答案

使用 values 变量通过 Ajax 发送数据

/* Get input values from form */
values = jQuery("#myform").serializeArray();

/* Because serializeArray() ignores unset checkboxes and radio buttons: */
values = values.concat(
jQuery('#myform input[type=checkbox]:not(:checked)').map(
function() {
return {"name": this.name, "value": this.value}
}).get()
);

关于php - 通过 ajax 发送未选中的复选框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36278729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com