从序列化读取以填充表单
Read from serialize to populate form
我在表单上执行了serialize()
并保存了字符串,是否有任何函数可以将值从序列化字符串填充回表单?
以下是爆炸药丸答案的更新版本,并在应用的评论中添加了其他建议:
$.each(serialized.split('&'), function (index, elem) {
var vals = elem.split('=');
$("[name='" + vals[0] + "']").val(decodeURIComponent(vals[1].replace(/'+/g, ' ')));
});
退房http://phpjs.org/functions/unserialize:571
我建议您使用JSON
,而不是序列化数据以使用javascript进行通信。PHP应该有json_encode()
和json_decode()
来帮助实现这一点,javascript还内置了JSON
处理函数,您甚至可能不需要这些函数。例如,如果$.getJSON
从服务器获得一个有效的JSON字符串,它将自动转换为javascript对象。
编辑:假设你谈论的是jQuery的$.serialize()
,我知道没有函数可以撤消它(我甚至不确定为什么有必要这样做…),但这应该有效:
$.each(serialized.split('&'), function (index, elem) {
var vals = elem.split('=');
$("[name='" + vals[0] + "']").val(vals[1]);
});
根据之前的答案,如果您有复选框或单选按钮:
$.each(serialized.split('&'), function (index, elem) {
var vals = elem.split('=');
var $elem = $formularioEquipo.find("[name='" + vals[0] + "']");
var value = decodeURIComponent(vals[1].replace(/'+/g, ' '));
if ($elem.is(':radio,:checkbox')) {
$elem.prop('checked', ($elem.val() === value));
} else {
$elem.val(value);
}
});
相关文章:
- CasperJS填充表单-输入名称有方括号
- 如何使用多维JSON数据重新填充表单
- 试图用cookie中的信息填充表单
- 如何在刷新时重新填充表单中的复选框并将表单值发布到页面
- 根据url填充表单选择下拉列表
- 从后台用angularjs填充表单
- 根据Rails4中的一个字段自动填充表单
- 使用jQuery用data-*数据填充表单文本输入
- 获取动态行数据值以使用 JavaScript 预填充表单
- 如何从 ng 重复项填充表单
- 如何使用 .ajax 拉取 MySQL 数据并用它填充表单
- 使用 php 变量值填充表单输入字段
- 轨道:填充表单中选择标签的输入
- 如何使用javascript用按钮填充表单列表
- 如何从我的 MySQL 数据库中提取数据以在页面加载时预填充表单
- 选择列表值并自动填充表单域
- 使用来自另一个表单的数据填充表单
- 如何使用 jquery 在同一页面上从数据库记录填充表单
- 基于表单输入值,如何 2 生成选择 4 下拉菜单 w 数据库中的行/记录数据,该数据库将在选择时预填充表单
- 如何使用我要编辑的 html 表中行中的数据填充表单中的输入字段