Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法设置未定义angularjs的属性_Angularjs - Fatal编程技术网

无法设置未定义angularjs的属性

无法设置未定义angularjs的属性,angularjs,Angularjs,我有一个json对象s.BdayDetails,我想将s.BdayDetails.ProvID的值更改为另一个值 for(var i=0;i您可以尝试下面的代码来实现与您描述的相同的功能。请检查示例代码实现 控制器: for(var i=0;i<s.BdayDetails.length;i++){ function(index){ h.post("../Event/getProvinceName?ProvID=" + s.BdayDetails[i].ProvID)

我有一个json对象s.BdayDetails,我想将s.BdayDetails.ProvID的值更改为另一个值


for(var i=0;i您可以尝试下面的代码来实现与您描述的相同的功能。请检查示例代码实现

控制器:

for(var i=0;i<s.BdayDetails.length;i++){
   function(index){
        h.post("../Event/getProvinceName?ProvID=" + s.BdayDetails[i].ProvID).then(function (r) {
            s.BdayDetails[index].ProvID = r.data.toString();
        })
   })(i);
 }
}
var s={
B日期详情:[{
提供:“001”,
ProvName:'卡纳塔克邦'
},{
提供:“002”,
ProvName:'果阿'
}]
};
var-indx=0;
函数nextProvince(){
if(indx
试试这个


for(var i=0;iIt是s.BdayDetails[i]。提供的是未定义的。这与r无关。似乎您在for循环内部执行多个异步AJAX请求。您应该避免这样的多个AJAX,并编写逻辑,以便您可以对一个AJAX调用执行相同的操作。如何操作?很抱歉,我不熟悉这一点:(当异步AJAX完成时,
i
的值不可用。我很困惑,哈哈哈:谢谢
  var s ={
    BdayDetails: [{
      ProvID: '001',
      ProvName: 'KARNATAKA'
    },{
      ProvID: '002',
      ProvName: 'GOA'
    }]
  };
  var indx = 0;

  function nextProvince(){
    if(indx < s.BdayDetails.length){
      $http.post("../Event/getProvinceName?ProvID=" + s.BdayDetails[indx].ProvID).then(function (r) {
          s.BdayDetails[indx].ProvID = r.data.toString();
          indx++;
          nextProvince();
      });
    }else{
      indx=0;
    }
  }
  nextProvince();
for(var i=0;i<s.BdayDetails.length;i++){
   function(index){
        h.post("../Event/getProvinceName?ProvID=" + s.BdayDetails[i].ProvID).then(function (r) {
            s.BdayDetails[index].ProvID = r.data.toString();
        })
   })(i);
 }
}