Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaScript中更新JSON数据_Javascript_Jquery - Fatal编程技术网

在JavaScript中更新JSON数据

在JavaScript中更新JSON数据,javascript,jquery,Javascript,Jquery,我一直在通过获取json数据来创建动态手风琴。我已经实现了它,并按预期工作,代码如下: 小提琴: 然而,在这个阶段,我想编辑accordion头formationName,一旦我点击刷新按钮,它就会更新json字符串。我想不出如何解决这个问题 $("#refresh").click(function(){ $( '.formationName' ).on( 'change', function(){ var text=myData.offsetFormations[0].

我一直在通过获取json数据来创建动态手风琴。我已经实现了它,并按预期工作,代码如下:

小提琴:

然而,在这个阶段,我想编辑accordion头formationName,一旦我点击刷新按钮,它就会更新json字符串。我想不出如何解决这个问题

   $("#refresh").click(function(){
    $( '.formationName' ).on( 'change', function(){
     var text=myData.offsetFormations[0].val();
     myData.offsetFormations[0]["formationName"]=text;
     json = JSON.stringify(jsonString);
     alert( jsonString );
    });
 });

顺便说一句,我最近开始了web开发。

当输入字段的值随jQuery更改事件更改时,您可以检测到输入字段的更改

字段更改后,可以使用点表示法更新指定的formationName

myObject[ 'key' ] = 'New Value';
然后可以使用JSON.stringify将对象重写为JSON格式的字符串

jsonString = JSON.stringify(myObject);
这是一把小提琴:


谢谢马特,我的问题稍微复杂一点。当formationName更改时,您如何捕获?啊,对不起。您可能可以使用自定义jQuery事件。您是否正在更改代码中的值,或者这是一个可能会自行更改的值?用户可以更改位于accordion标头中的formationName。有两个步骤我需要帮助,如何捕获此事件以及如何更新json?您可以使用jQuery检测更改事件,然后使用json.stringify;将对象重写为JSON字符串。这很有道理。然而,我只是以你为榜样,但没有运气。请看我根据您的方法更新的问题。
jsonString = JSON.stringify(myObject);