如何使用jQuery合并两个json对象
How to merge two json object using jQuery?
我有两个json对象data和foo,我想合并它们并创建一个json物体。生成的json应该具有来自foo的所有值和来自data的值。到目前为止,我有一个类似的东西
javascript:
$('#btn').click(function(){
var imdbid=$('#tst').val();
var url = "http://www.omdbapi.com/?i="+imdbid+"&plot=full&r=json"
$.ajax({
url:url,
dataType:'json',
success:function (json) {
data=json
var foo=$('form').serializeJSON() // store json string
var marged=$.extend(data,foo);
console.log(marged);
}
})
})
HTML:
<form id="myform">
<label>imdb id:</label><input type="text" id="tst" name="tst"/></form><br/>
<label>comment:-</label><input type="text" id="comment" name="comment" /><br/>
<label>link:-</label><input type="text" name="link" id="link" /><br/>
<input type="button" value="search" id="btn"/>
</form>
第一个对象包含从api返回的数据,foo包含form的值。当我试图打印出数据时,如下
{Title: "Mother's Day", Year: "2016", Rated: "PG-13", Released: "29 Apr 2016", Runtime: "118 min"…}
Actors
:
"Britt Robertson, Jennifer Aniston, Julia Roberts, Timothy Olyphant"
Awards
:
imdbID
:
"tt4824302"
tst
:
"tt4824302"
它得到的是第一个输入值,而不是第二个。
您正在关闭此行上的FORM:
<label>imdb id:</label><input type="text" id="tst" name="tst"/></form><br/>
因此它只得到第一个输入字段;)
首先将json更改为object,然后将它们合并为
data=json
var foo=$('form').serializeJSON();
marged=$.extend(JSON.parse(data),JSON.parse(foo));
console.log(marged);
相关文章:
- 如何使用 node.js 比较两个 json 数组
- 将两个Json提要合并为一个,并按时间排序
- 如何使用jQuery合并两个json对象
- '对象不是函数'当使用angular连接两个json数组时
- 是否有任何功能可以合并两个JSON数据集并替换旧信息?(节点.JS)
- 如何将两个json对象合并为一个json
- AngularJS:用两个JSON数组填充复选框列表,最初检查了一个数组中的一些项
- 如何从.ajax调用返回两个JSON数组
- 通过比较另外两个json对象来创建json对象
- 在不使用jQuery的情况下连接两个JSON对象
- 两个 JSON 请求的列表
- Angularjs - 组合两个 json 对象
- JavaScript 中通过公共属性“交叉”两个 JSON 对象数组的最佳方式
- 比较来自输入 AngularJS 的两个 JSON 对象
- 比较两个JSON数组并重新排列新的JSON数组格式
- 如何从两个 JSON 数组获取增量
- 遍历两个 JSON 数组 Ajax
- 同时在窗体中显示两个 JSON 值
- Javascript:根据其他字段合并两个JSON
- 如何合并两个 JSON 文件,然后检索它