gpt4 book ai didi

javascript - 在输入隐藏字段中存储返回 json 值

转载 作者:IT老高 更新时间:2023-10-28 12:46:14 25 4
gpt4 key购买 nike

我想知道是否可以将返回的 json 存储在隐藏的输入字段中。例如,这是我的 json 返回的内容:

[{"id":"15aea3fa","firstname":"John","lastname":"Doe"}]

我只想将 id 存储在隐藏字段中,以便稍后引用它来处理它。

示例:我有这样的事情:

<input id="HiddenForId" type="hidden" value="" />

并希望 jquery 稍后将值返回给我,如下所示:

var scheduletimeid = $('#HiddenForId').val();

最佳答案

虽然我已经看到建议的方法使用和工作,但我认为仅使用 JSON.stringify 设置隐藏字段的值会破坏 HTML...

在这里我将解释我的意思:

<input type="hidden" value="{"name":"John"}">

如您所见,开链括号后的第一个双引号可能会被某些浏览器解释为:

<input type="hidden" value="{" rubbish >

因此,为了更好地解决此问题,我建议使用 encodeURIComponent 函数。与 JSON.stringify 一起,我们应该拥有如下内容:

> encodeURIComponent(JSON.stringify({"name":"John"}))
> "%7B%22name%22%3A%22John%22%7D"

现在该值可以安全地存储在输入隐藏类型中,如下所示:

<input type="hidden" value="%7B%22name%22%3A%22John%22%7D">

或者(甚至更好)使用由脚本操作的 HTML 元素的 data- 属性,该脚本将使用数据,如下所示:

<div id="something" data-json="%7B%22name%22%3A%22John%22%7D"></div>

现在要读回数据,我们可以执行以下操作:

> var data = JSON.parse(decodeURIComponent(div.getAttribute("data-json")))
> console.log(data)
> Object {name: "John"}

关于javascript - 在输入隐藏字段中存储返回 json 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3448831/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com