我想使用来自web api的值,一切运行正常但是当我从单个变量中读取url中的值时,它会变成大数据:
var orguni = "http://hospdev.hispindia.org/haryana_220/api/organisationUnits?fields=name,id,code";
$.ajax({
type: "GET",
url: orguni,
dataType: "xml",
crossDomain: true,
headers: {
},
success: function (xml) {
$(xml).find('organisationUnit ').each(function () {
var ou = $(this).attr('id');
console.log("UID: "+ ou);
});
}
});
现在,当我显示ou
时,它返回一个不同身份证的列表,我想将所有身份证用作单独的值,任何人都可以告诉我该怎么做。
Currently it returns:
index.html:26 UID: g8cMOWx5ydN
index.html:26 UID: Q2FEgPgHvMr
index.html:26 UID: XpIf2v7cJRX
index.html:26 UID: uoPA7guOuLa
index.html:26 UID: BLpdsMuZcqD
当我使用console.log(ou [0]);它从每个中返回第一个字符:
g
Q
x
...
答案 0 :(得分:0)
var array = [];
$(xml).find('organisationUnit ').each(function () {
var ou = $(this).attr('id');
array.push(ou);
});
array [0]现在将是g8cMOWx5ydN。
ou [0]正在做的是将g8cMOWx5ydN变成一个数组并返回索引0,这是' g'。
编辑以下评论
你可以在检索它时使用Id,而不是使用数组。
$(xml).find('organisationUnit ').each(function () {
var id = $(this).attr('id');
// use id ajax call here
});
或者你可以在每个
之后使用数组var array = [];
$(xml).find('organisationUnit ').each(function () {
var ou = $(this).attr('id');
array.push(ou);
});
//other code
for(var i=0; i<array.length; i++){
var id = array[i];
// use id ajax call here
}