Javascript $.getJSON没有将数据保存到全局变量/对象中,而全局变量/对象是本地变量/对象
我有一个文件data3.json:Javascript $.getJSON没有将数据保存到全局变量/对象中,而全局变量/对象是本地变量/对象,javascript,jquery,json,Javascript,Jquery,Json,我有一个文件data3.json: { "street":"Oslo West 555", "age":33, "phone":"555 1234567" } 我想用JavaScript(和JQuery)读取这个文件,并将值存储到一个对象中 我有HTML文件(同一目录): 在控制台中,我得到: street: Oslo West 555 Object { street="Oslo West 555"} age: 33 Object { street="Oslo West 555", age=3
{
"street":"Oslo West 555",
"age":33,
"phone":"555 1234567"
}
我想用JavaScript(和JQuery)读取这个文件,并将值存储到一个对象中
我有HTML文件(同一目录):
在控制台中,我得到:
street: Oslo West 555
Object { street="Oslo West 555"}
age: 33
Object { street="Oslo West 555", age=33}
phone: 555 1234567
Object { street="Oslo West 555", age=33, phone="555 1234567"}
我已经使用add(…)函数测试了在函数内部添加值,该函数运行良好。
在$.getJSON中,变量变为本地变量
如何强制$.getJSON将数据添加到我的变量JSONObject中?
$。getJSON
是异步的。你应该读到:谢谢你的回复。您的解决方案可以将数据转换为HTML,但我希望将数据也保存在变量JSONObject中。如果我尝试:$.getJSON('data3.json',function(data){JSONObject=data;}),则不是这样;$(“#jage”)[0].innerHTML=JSONObject.age;$(“#jstreet”)[0].innerHTML=JSONObject.street;$(“#jphone”)[0].innerHTML=JSONObject.phone;不需要使用数组索引$(“#jage”)[0]”。可以像$(“#jage”)一样访问具有“jage”id的span元素,并且可以通过$(“#jage”).html('')更改值;如果运行,则发出警报(JSON.stringify(JSONObject));您可以看到这些值。我理解您的意思,但请尝试在})之后使用内容;,在$.getJSON之外。
$.getJSON('data3.json', function(data) {
JSONObject = data;
$("#jname").html(JSONObject.name);
$("#jage").html(JSONObject.age);
$("#jstreet").html(JSONObject.street);
$("#jphone").html(JSONObject.phone);
});
street: Oslo West 555
Object { street="Oslo West 555"}
age: 33
Object { street="Oslo West 555", age=33}
phone: 555 1234567
Object { street="Oslo West 555", age=33, phone="555 1234567"}
$.getJSON('data3.json', function(data) {
JSONObject = data;
$("#jname").html(JSONObject.name);
$("#jage").html(JSONObject.age);
$("#jstreet").html(JSONObject.street);
$("#jphone").html(JSONObject.phone);
});