【发布时间】:2020-01-16 18:47:37
【问题描述】:
我有多个使用 jquery 序列化的输入字段,然后使用 AJAX 调用将数据保存到我的 SQL 数据库中。当我序列化输入字段时,序列化的 JSON 数据的顺序如下所示:
[{
"value1": [ "123", "111", "222", "333" ],
"value2": [ "111", "222", "333", "444" ],
"value3": [ "1111", "2222", "3333", "4444" ],
"title1": [ "This is a title" ],
"title2": [ "Another title" ]
}]
虽然我希望它是这样的:
[
{ "value1": [ "123", "111", "222", "333" ] },
{ "title1": "This is a title" },
{ "value2": [ "111", "222", "333", "444" ] },
{ "title2": "Another title" },
{ "value3": [ "1111", "2222", "3333", "4444" ] }
]
序列化代码的行如下所示:
var inputVals = $(this).closest('.blockContent').find("select, textarea, input").serialize();
将数组编码为 JSON 格式的 PHP 代码:
parse_str($request->inputVals,$inputVals);
$inputVals = array($inputVals);
$inputVals = json_encode($inputVals);
被序列化的输入示例:
<input name="value1[0]" value="{{ $jsonValues['value1'][0] }}" type="number">
<input name="value1[1]" value="{{ $jsonValues['value1'][1] }}" type="number">
<input name="title1" value="{{ $jsonValues['value1'] }}" type="text">
更新:
为了以更好的方式提出我的问题,我如何从 Jquery/javascript 中使上面的输入字段变得像 JSON 结构一样,格式可以像我在上面的 JSON 代码中想要的那样排序?
【问题讨论】: