gpt4 book ai didi

javascript - 通过调用 php 函数的 md-grid-list 将值设置为 md-select

转载 作者:搜寻专家 更新时间:2023-10-31 21:29:51 25 4
gpt4 key购买 nike

我想通过 php 函数的 md-grid-list 值动态设置 md-select 的值。请帮我。我的代码在这里。

    appCity.controller('appCtrlCity', function($scope, $http, $mdDialog,  $timeout, $mdSidenav, $mdUtil, $log) {
$scope.imagePath = 'img/yangon.png';
$scope.toolbarIcon = 0;
$scope.toolBarTitle = "Sales Dashboard";
$scope.orgSelected = undefined;
$http.post("controllers/loadMasterData.php?actionType=plant").success(function(data) {
$scope.toolbarIcon = 0;
$scope.toolBarTitle = "Sales Dashboard";
json =JSON.stringify(data);
json=JSON.parse(json)
for (var i = 0; i < json.length; i++) {
var jsonOrg = [];
var CValue = json[i].CodeValue;
var CDesc = json[i].CodeDesc;
json[i].CodeRow = 1;
json[i].CodeCol= 2;
json[i].CodeColor = 'red';
$http.post("controllers/loadMasterData.php?actionType=salesorg&plantType="+json[i].CodeValue).success(function(salesorg) {
json[i].SalesOrganisations = {
'SalesOrg' : salesorg[0].SalesOrg,
'SalesOrgDesc' : salesorg[0].SalesOrgDesc
};
console.log('first');
});
}
console.log('second');
$scope.items = json;
});

如果我这样运行,我会遇到以下错误......类型错误:无法设置未定义的属性“SalesOrganisations”

console.log('second') 先显示在这部分之前

$http.post("controllers/loadMasterData.php?actionType=salesorg&plantType="+json[i].CodeValue).success(function(salesorg) {
json[i].SalesOrganisations = {
'SalesOrg' : salesorg[0].SalesOrg,
'SalesOrgDesc' : salesorg[0].SalesOrgDesc
};
console.log('first');
});

salesorg 返回数据...所以请帮助我!

最佳答案

您遗漏了 javascript 中可变范围的微妙且经常被误解的细微差别。

for (var i = 0; i < json.length; i++) {
var jsonOrg = [];
var CValue = json[i].CodeValue;
var CDesc = json[i].CodeDesc;
json[i].CodeRow = 1;
json[i].CodeCol= 2;
json[i].CodeColor = 'red';
$http.post("controllers/loadMasterData.php?actionType=salesorg&plantType="+json[i].CodeValue).success(function(salesorg) {
// when you get to here, the loop has already finished, and i has been set to json.length
json[i].SalesOrganisations = {
'SalesOrg' : salesorg[0].SalesOrg,
'SalesOrgDesc' : salesorg[0].SalesOrgDesc
};
});
}

尝试这样的事情......

for (var i = 0; i < json.length; i++) {
var jsonOrg = [];
var CValue = json[i].CodeValue;
var CDesc = json[i].CodeDesc;
json[i].CodeRow = 1;
json[i].CodeCol= 2;
json[i].CodeColor = 'red';
// you need to pass this iteration's value of i into a closure, so it's maintained for the ajax handler
(function(i){
$http.post("controllers/loadMasterData.php?actionType=salesorg&plantType="+json[i].CodeValue).success(function(salesorg) {
json[i].SalesOrganisations = {
'SalesOrg' : salesorg[0].SalesOrg,
'SalesOrgDesc' : salesorg[0].SalesOrgDesc
};
});
})(i);

}

关于javascript - 通过调用 php 函数的 md-grid-list 将值设置为 md-select,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31152206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com