友
我在javascipt中声明了数组
var Answer1 = new Array(50);
我想使用$ ajax& amp;来调用webserivce我想将其响应存储在适当的数组索引。
&安培;想要在设置所有值后立即使用该数组。
目前我通过使用$ ajax的async:false
属性来执行此操作。
有没有人知道asynchrnous方式,因为当我使用数组的异步值时仍未定义。
for(var j=0;j < mycollection.length-1;j++)
{
$.ajax({
type: 'GET',
url: webserviceURL,
dataType: 'json',
error: function(data)
{
//alert(data.error);
},
success: function(data)
{
if(data.error!=null)
{
console.log('data error');
Answer1[j] = data.name;
}
},
complete: function(data)
{
alert('completed:');
},
data: {},
async: false
});
答案 0 :(得分:0)
你使用了错误的Answer1索引:
Answer1[i] = data.name;
应该是:
Answer1[j] = data.name;
但如果仍然无效,请将j作为参数传递给您的Web服务,并让Web服务将其作为响应的一部分返回,以便您知道要分配的索引。
另外,如果data.error不为null,您只是分配?这是你想要的,如果没有错误,你不想分配(即data.error为空)?
答案 1 :(得分:0)
将使用数组的任何代码放入函数中。从Ajax调用的成功处理程序中调用该函数。