Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.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
Javascript ajax在angular js中的重新加载_Javascript_Angularjs_Json_Ajax - Fatal编程技术网

Javascript ajax在angular js中的重新加载

Javascript ajax在angular js中的重新加载,javascript,angularjs,json,ajax,Javascript,Angularjs,Json,Ajax,我有一个从json生成项目的下拉列表 `generalService.getUrlData('get_data') .then(function(data){ $scope.names = data.data; for (var i=0; i < $scope.names.length; i++) { var compn = $scope.names[i].NAME;

我有一个从json生成项目的下拉列表

`generalService.getUrlData('get_data')
        .then(function(data){
            $scope.names = data.data;
            for (var i=0; i < $scope.names.length; i++) {
                var compn = $scope.names[i].NAME;   
                $scope.compname.push(compn);
            }
    });`
`generalService.getUrlData('get_data'))
.then(功能(数据){
$scope.names=data.data;
对于(变量i=0;i<$scope.names.length;i++){
var compn=$scope.names[i].NAME;
$scope.compname.push(compn);
}
});`

我的问题是,当我使用typeahed组合框向db输入新数据时,新输入的数据不会填充在下拉列表中。重新加载页面后,它将填充。如何在单击submit按钮时重新加载ajax调用,以便新输入的项目显示在下拉列表中,而不重新加载页面。我希望您理解我的问题。

如果要将新数据从服务器加载到客户端,您需要调用new http request


如果您的数据刚从使用者输入,则可以通过模拟服务器端更新来避免新的请求,方法是在save new data API调用成功后调用
getUrlData

例如:


当您使用typeahed组合框向db输入新数据时。您需要再次触发下拉列表getdata api。或者使用
$route.reload()
在通过typeahed组合框将新数据保存到db后,它将调用所有动态函数请求。

解释您的需要更正。如果您再次调用函数并绑定数据,,?您仅通过前端将新数据保存到db,对吗?代码在同一个控制器中?是的,正是@SyamPillai
function getAllUrlData () {
  generalService.getUrlData('get_data')
    .then(function(data){
        $scope.names = data.data;
        for (var i=0; i < $scope.names.length; i++) {
            var compn = $scope.names[i].NAME;   
            $scope.compname.push(compn);
        }
  });
}

function save newData (new_data) {
   generalService.veNewasUrlData('get_data')
    .then(function(data){
       getAllUrlData()   // fecth all data again when save data is success
    });
}
$scope.compname.push(newData) // this will automatically come once reload. So no issues with temporary push