首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何动态地格式化和添加新的数字到隐藏字段?

如何动态地格式化和添加新的数字到隐藏字段?
EN

Stack Overflow用户
提问于 2012-09-23 17:35:10
回答 2查看 118关注 0票数 1

我从服务器端到客户端只有纯数字in,如何动态地将它添加到html隐藏字段中,使其看起来像数组或JSON格式(我的意思是:["32","33","34"]),以便在下一步我可以在服务器上接收和解析?隐藏字段在开始时仅包含空方括号[]

我当前的代码将隐藏字段从[]覆盖到例如"32"

代码语言:javascript
运行
复制
$("#myHiddenField").val(JSON.stringify(data.result[0].newid));
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-23 17:41:37

您可以使用$.parseJSON()从隐藏的输入值反序列化数组,push()新项,然后再次序列化数组:

代码语言:javascript
运行
复制
var $hiddenField = $("#myHiddenField");
var results = $.parseJSON($hiddenField.val());
results.push(data.result[0].newid);
$hiddenField.val(JSON.stringify(results));

但是,在添加项时跟踪数组,并仅在提交表单时序列化它(例如,在submit事件处理程序中)可能更有效。

票数 2
EN

Stack Overflow用户

发布于 2012-09-23 17:52:05

为了避免解析隐藏字段中的数据,您可以保留一个实际的数组,将新的id推入其中,并将其序列化以放入隐藏字段中:

代码语言:javascript
运行
复制
var myArray = [];

myArray.push(data.result[0].newid);
$("#myHiddenField").val(JSON.stringify(myArray));

注意:数字数组的JSON形式应该是[32,33,34]而不是["32","33","34"],这也是您从上面的代码中得到的。如果您想使用字符串格式而不是数字格式,请在推送值之前添加一个.toString()

代码语言:javascript
运行
复制
myArray.push(data.result[0].newid.toString());
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12551208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档