sql 服务器 Angularjs asp.netmvc 中数据更新前显示记录的搜索方法
Search method to show record before data update in sql server Angularjs asp.netmvc
Angular js函数更新一些记录。更新记录后,我正在调用搜索方法以在视图中显示数据。
但在未获取数据的搜索方法调用之前记录未更新,因此在视图中显示为空。
我在其 ng-click 此搜索方法调用上有单独的搜索按钮。几秒钟后,如果我单击该按钮,它会显示数据。
我的代码是,
vm.Update = function (value)
{
var test = value;
searchCriteria = {
From: vm.From,
To: vm.To,
Region: vm.Region,
City: vm.SelectedCity
}
surveyService.UpdateVisit(searchCriteria,value).then(function (d) {
var Confrm = JSON.parse(d.data.data);
if (d.data.status) {
toastr.success(Updated, {
autoDismiss: false
});
}
else {
toastr.error(errorMsg);
}
});
vm.searchVisit(0);
}
此搜索访问调用和服务无法更新数据库中的数据,因此我没有看到任何记录。当我从单独的按钮调用此 searchvisit 方法进行搜索时,它会显示包含更新数据的记录。
希望得到您的建议,如何在调用 searchvisit 方法之前暂停执行,或者它得到任何响应而不是将执行控制移至 searchvisit 方法的任何替代方法。
谢谢
这是由于 JS 的异步特性。
根据您的代码,surveyService.UpdateVisit(searchCriteria,value)
returns 一个承诺。因此,当vm.searchVisit(0);
被调用时,surveyService.UpdateVisit(searchCriteria,value)
还没有被解决,意味着更新还在进行中,还没有完成。 vm.searchVisit(0);
显示未更新的记录。
如果您的第二个函数依赖于第一个函数调用的值,请将其添加到成功回调中,如下所示。
surveyService.UpdateVisit(searchCriteria,value).then(function (d) {
var Confrm = JSON.parse(d.data.data);
if (d.data.status) {
toastr.success(Updated, {
autoDismiss: false
});
}
else {
toastr.error(errorMsg);
}
//Add this here.
vm.searchVisit(0);
});
Angular js函数更新一些记录。更新记录后,我正在调用搜索方法以在视图中显示数据。
但在未获取数据的搜索方法调用之前记录未更新,因此在视图中显示为空。
我在其 ng-click 此搜索方法调用上有单独的搜索按钮。几秒钟后,如果我单击该按钮,它会显示数据。
我的代码是,
vm.Update = function (value)
{
var test = value;
searchCriteria = {
From: vm.From,
To: vm.To,
Region: vm.Region,
City: vm.SelectedCity
}
surveyService.UpdateVisit(searchCriteria,value).then(function (d) {
var Confrm = JSON.parse(d.data.data);
if (d.data.status) {
toastr.success(Updated, {
autoDismiss: false
});
}
else {
toastr.error(errorMsg);
}
});
vm.searchVisit(0);
}
此搜索访问调用和服务无法更新数据库中的数据,因此我没有看到任何记录。当我从单独的按钮调用此 searchvisit 方法进行搜索时,它会显示包含更新数据的记录。
希望得到您的建议,如何在调用 searchvisit 方法之前暂停执行,或者它得到任何响应而不是将执行控制移至 searchvisit 方法的任何替代方法。
谢谢
这是由于 JS 的异步特性。
根据您的代码,surveyService.UpdateVisit(searchCriteria,value)
returns 一个承诺。因此,当vm.searchVisit(0);
被调用时,surveyService.UpdateVisit(searchCriteria,value)
还没有被解决,意味着更新还在进行中,还没有完成。 vm.searchVisit(0);
显示未更新的记录。
如果您的第二个函数依赖于第一个函数调用的值,请将其添加到成功回调中,如下所示。
surveyService.UpdateVisit(searchCriteria,value).then(function (d) {
var Confrm = JSON.parse(d.data.data);
if (d.data.status) {
toastr.success(Updated, {
autoDismiss: false
});
}
else {
toastr.error(errorMsg);
}
//Add this here.
vm.searchVisit(0);
});