選択リストとテキストボックスからなる行の表を持つ角度表示があります。選択リストのインデックスが変更されると、同じ行の対応するテキストボックスをデータベースの参照値で更新する必要があります。私は、$ http.getを利用してActionMethodを通して呼び出しを行う$ scope関数を呼び出すために、選択リストでng-Changeを使用しています。私はこれを何百万という方法で試してみましたが、最後に$ http.get関数からスコープ変数に値を割り当てることで値を抽出できましたが、選択したインデックスの変更によってトリガされた前回のルックアップの値を取得するだけです。現在のものではありません。どのようにしてリアルタイムで価値を得ることができますか?私はそれが非同期であることを理解しているので、問題の性質を知っています。どのように私はそれを回避するのですか?私の.jsの現在の状態:
$scope.EntityId = null;
$scope.EntityNameChanged = function (item, block) {
for (var i = 0; i < block.length; i++)
{
if (item.Value == block[i].Name.Value) {
$scope.GetEntityId(item.Value);
block[i].Id = $scope.EntityId;
}
}
}
$scope.GetEntityId = function(name) {
$http.get("EntityId", { params: { EntityName: name } }).then(function success(response) {
$scope.EntityId = response.data[0].Value;
});
};
可能な重複http://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an -asynchronous-call) –