php - Jquery循环表单并创建关联数组
问题描述
我正在尝试遍历每个表单字段的无序列表。当我尝试将其附加到 formdata 并通过 PHP 处理它时,它只会返回
team: "[object Object],[object Object]"
JS在这里:
var arr = [];
$( '#team_list li' ).each(function(idx, li) {
$team_name = $( li ).find('input[name="team_name"]').val();
$team_role = $( li ).find('input[name="team_role"]').val();
$team_citizen = $( li ).find('#country').val();
$team_status = $( li ).find('#id_team_status').val();
arr.push({ name: $team_name, role: $team_role, citizen: $team_citizen, status: $team_status, });
});
fd.append('team', arr );
解决方案
的第二个参数FormData.append
需要是字符串或文件;不属于其中之一的任何内容都将转换为字符串(请参阅手册)。所以你看到的是arr
. 你需要做的是JSON编码arr
(使用JSON.stringify
)即
fd.append('team', JSON.stringify(arr));
然后在你的 PHP 代码中你可以写
$teams = json_decode($_POST['team']);
推荐阅读
- ruby-on-rails - 对控制器中的不同参数有单独的更新操作?
- python-3.x - 有没有可以看到python方法签名的网站?
- hadoop - Hadoop 多节点集群太慢。如何提高数据处理速度?
- python - 在python中转换日期时间分钟和年份
- python - 如何将 Airflow 与 Github 集成以运行脚本
- excel - 执行存储在宏中的字符串中的excel公式
- elasticsearch - 如何在 bucket_script 中使用父级的兄弟存储桶路径?
- android-recyclerview - 如何在 RecyclerView 中处理多个项目
- forms - 分配父母时提示消失
- swisscomdev - Cloudfoundry:两个组织中的相同域