为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 JSON 通过输入创建和修改数据?

如何使用 JSON 通过输入创建和修改数据?

吃鸡游戏 2022-06-09 11:03:10
我开始学习 JavaScript,但我被这段代码卡住了。我试图了解用户如何使用 JSON 创建和修改信息;现在我可以输入数据,但我不知道代码应该如何使用相同的输入来修改它。有人可以帮忙吗?这是我目前的代码:<!DOCTYPE html><html><body onload="myLoad()">    <form>        <label for="track">Track: </label>        <input type="text" name="track" id="track" required><br>        <label for="artist">Artist: </label>        <input type="text" name="artist" id="artist" required><br>        <label for="album">Album: </label>        <input type="text" name="album" id="album"><br>        <label for="genre">Genre: </label>        <select id="genre">            <option value="">--Please choose an option--</option>            <option value="rock">Rock</option>            <option value="pop">Pop</option>            <option value="jazz">Jazz</option>            <option value="classic">Classic</option>        </select><br>        <button onclick="addTrack()">Register a new track</button>    </form>    <select id="trackList" onchange="ChangeActiveUser(this.value)">        <option value="">--Please choose a track--</option>    </select>    <script>var track = [];function myLoad() {    let htmlSelect = document.getElementById("trackList");    htmlSelect.style.visibility = "hidden";    if (sessionStorage.getItem("hasCodeRunBefore") === null) {       // let arrayOfPersonObjects = [];        sessionStorage.setItem("tracks", JSON.stringify(track));        sessionStorage.setItem("hasCodeRunBefore", true);    } else {        track = JSON.parse(sessionStorage.getItem("tracks"));        let i = 0;        track.forEach(function(t) {            let optItem = document.createElement("option");            optItem.innerHTML = t.track;            optItem.value = i;            i = i + 1;            htmlSelect.appendChild(optItem);        });        if (i > 0) {            htmlSelect.style.visibility = "visible";        }    }}
查看完整描述

2 回答

?
湖上湖

TA贡献2003条经验 获得超2个赞

如果您想将输入值保存到本地存储中,您可以使用您可以在此处找到更多信息:https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/字符串化


//Get the value of input

let artistsInput = document.getElementById("artist").value;


//Convert the artist variable into a string

let artistsStr = JSON.stringify(artists)


//Store the value of artistsStr into localStorage

localStorage.setItem("anything", artistsStr)


//Get the value of localStorage in object form

let artists = JSON.parse(localStorage.getItem("anything"))


查看完整回答
反对 回复 2022-06-09
?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

JSON 与 YAML 和 XML 一样,是一种编码方案。 您可以使用它将数据结构编码和解码为字符串。您将字符串本身视为“黑匣子”,依靠语言对其进行编码和解码。你知道每一种语言都有一个兼容的编码/解码过程实现,他们都会理解。不要尝试将编码字符串“作为”字符串...

您通常会发现它以两种方式使用:(1) 使用LocalStorage,和 (2) 使用“AJAX”调用主机系统。


如果我们谈论的是“创建和修改数据”,比如在位于主机端的数据库中,那么我们必然是在谈论 AJAX。我想请您参考关于该主题的数千个教程中的任何一个,例如非常优秀的 w3schools 的教程: https ://www.w3schools.com/xml/ajax_intro.asp 。

我相信您会很快理解它是如何工作的,以及 JSON、YAML如何融入其中。


查看完整回答
反对 回复 2022-06-09
  • 2 回答
  • 0 关注
  • 172 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信