Javascript 如何在调用async webservice Response时将值设置为数组
朋友们 我已经在javascipt中声明了数组Javascript 如何在调用async webservice Response时将值设置为数组,javascript,Javascript,朋友们 我已经在javascipt中声明了数组 var Answer1 = new Array(50); 我想使用$ajax调用webserivce&我想将其响应存储在数组的适当索引中。 &希望在设置完所有值后立即使用该数组。 目前,我使用$ajax的async:false属性来实现这一点。 有人知道asynchronous way的方法吗?因为当我使用异步数组时,数组的值仍然是未定义的 for(var j=0;j < mycollection.length-1;j++) { $.aja
var Answer1 = new Array(50);
我想使用$ajax调用webserivce&我想将其响应存储在数组的适当索引中。
&希望在设置完所有值后立即使用该数组。
目前,我使用$ajax的async:false属性来实现这一点。
有人知道asynchronous way的方法吗?因为当我使用异步数组时,数组的值仍然是未定义的
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
});
你用错了答案1的索引:
Answer1[i] = data.name;
应该是:
Answer1[j] = data.name;
但是如果这仍然不起作用,那么将j作为参数传递给您的webservice,并让webservice将其作为响应的一部分返回,以便您知道要分配给的索引
此外,仅当data.error不为空时才进行赋值?这就是您想要的吗?如果没有错误,即data.error为null,您不想赋值吗?将使用数组的任何代码放入函数中。从Ajax调用的成功处理程序中调用该函数。您能发布更多代码来帮助我们了解您正在尝试执行的操作以及当前的错误吗?@Mattflowers请告诉我如何使用异步调用执行此操作