js 获取和回填form表格数据
//将form里面的内容序列化成json数据 $.fn.serializeJson = function (otherString) { var serializeObj = {}, array = this.serializeArray(); $(array).each(function () { if (serializeObj.hasOwnProperty(this.name)) { serializeObj[this.name] += ';' + this.value; } else { serializeObj[this.name] = this.value; } }); if (otherString != undefined) { var otherArray = otherString.split(';'); $(otherArray).each(function () { var otherSplitArray = this.split(':'); serializeObj[otherSplitArray[0]] = otherSplitArray[1]; }); } return serializeObj; }; //将josn对象赋值给form--》即数据回显 $.fn.setForm = function (jsonValue) { var obj = this; $.each(jsonValue, function (name, ival) { var $oinput = obj.find("input[name=" + name + "]"); if ($oinput.attr("type") == "checkbox") { if (ival !== null) { var checkboxObj = $("[name=" + name + "]"); var checkArray = ival.split(";"); for (var i = 0; i < checkboxObj.length; i++) { for (var j = 0; j < checkArray.length; j++) { if (checkboxObj[i].value == checkArray[j]) { checkboxObj[i].click(); } } } } } else if ($oinput.attr("type") == "radio") { $oinput.each(function () { var radioObj = $("[name=" + name + "]"); for (var i = 0; i < radioObj.length; i++) { if (radioObj[i].value == ival) { radioObj[i].click(); } } }); } else if ($oinput.attr("type") == "textarea") { obj.find("[name=" + name + "]").html(ival); } else { obj.find("[name=" + name + "]").val(ival); } }) }
// 回填 var thisForm = $("#form"); thisForm.setForm(data);
// 获取 var thisForm = $("#form"); var thisData = thisForm.serializeJson();
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~