赞
踩
HTML代码
{foreach $v.lists as $k2=>$v2}
<tr>
<td>{$v2.id}</td>
<td>{$v2.title}</td>
<td>
<input type="number"
class="nodebox nodebox_{$v.module}"
name="nodebox[{$v2.id}]"
lay-skin="primary"
value="{$v2.score}" />
</td>
</tr>
{/foreach}
<script type="text/javascript">
$(function () {
layui.use([
"layer",
"form",
"element",
], function () {
layer = layui.layer;
form = layui.form;
element = layui.element;
form.on("submit(demo1)", function (data) {
// layer.msg(JSON.stringify(data.field));
$.post("", {
data: JSON.stringify(data.field),
}, function (params) {
return false;
if (params.code != 0) {
layer.msg(params.msg);
} else {
parent.location.reload();
}
}, "json");
return false;
});
});
});
</script>
PHP代码
$data = trim(input("data"));
$data = json_decode($data, true);
dump($data);
die;
PHP中获取到内容
PHP中的处理方法
/**
* JSON字符串转为array数组
* 调用的函数都是PHP函数可能会导致兼容性问题
*
* @param string $key json字符串对应的key值
* @return array 还原之后的json数组
*/
function json2arr($jsonstr)
{
// 将特殊的 HTML 实体转换回普通字符
$jsonstr = htmlspecialchars_decode($jsonstr);
// // 一般不需要,如果返回值和预期不一致请取消注释,PHP5.2小程序需要此方法
// $jsonstr = stripslashes($jsonstr);
// 对 JSON 格式的字符串进行解码
$json = json_decode($jsonstr, true);
// 一般不需要,如果返回值和预期不一致请取消注释,将删除数组中 array 的所有“空”(参考empty函数)元素
$json = array_filter($json);
// 还原json字符串中包含的[](数组)
// 生成 urlencode 之后的请求字符串
$query = http_build_query($json);
// 将字符串解析成一个数组,并存入传递的第二个变量,在这里是(json_arr)
parse_str($query, $json_arr);
return $json_arr;
}
修改之后的PHP代码
$data = trim(input("data"));
$data = json2arr($data);
dump($data);
die;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。