我需要json文件和其他数组的帮助。我希望在我的数组中推送对象,然后提醒某些对象的值......
var jsonOriginal = new Array('http://192.168.1.101:8080/mbx/labResults.json');
var jsonDisplay = new Array();
function grid () {
$.getJSON(jsonOriginal, function(data) {
jsonLength = data.length;
jsonDisplay.push(data);
});
alert(jsonDisplay[0].someone.name);
json的例子:
[{"someone":{"name":"Ljubica Lulik","number":"523011571"}, {"someone":{"name":"Lubi Lulik","number":"523012341"}]
答案 0 :(得分:3)
push
将单个值压入数组。如果你想拥有第一个数组的元素+第二个数组的元素,你必须使用concat
:
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/concat
答案 1 :(得分:1)
您提供的数组不是字符串作为$ .getJSON的URL。 URL必须是一个字符串。目前尚不清楚为什么你有一个数组中的URL
AJAX是异步的,因此当您尝试提醒数据时ajax尚未完成。要访问数据,您需要在ajax
的成功回调中执行此操作然后,您对数据的提醒需要为someone
function grid () {
/* get url from array*/
var url=jsonOriginal[0];
$.getJSON(url, function(data) {
jsonLength = data.length;
jsonDisplay.push(data);
/* need to fix your json to be valid then can access jsonDisplay[0] here*/
});
/* can't access new data here...ajax has not completed yet*/
}
修改强>
仔细观察JSON是不是在jsonlint.com验证。它的结构也不是很友好