Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.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 Angularjs如何在函数中保留url?_Javascript_Angularjs - Fatal编程技术网

Javascript Angularjs如何在函数中保留url?

Javascript Angularjs如何在函数中保留url?,javascript,angularjs,Javascript,Angularjs,嗨,我正在开发一个Angularjs应用程序。我有三个级联下拉列表。根据下拉列表中选择的值,我将div与从api接收的数据绑定(div与ng repeat)。我已经实现了分页 在页面加载时,我绑定第一个下拉列表 var arrMakes = new Array(); $http.get(url + 'api' + '/Vehicle/' + 'GetVehicleMake').success(function (data) { $.map(data.dat

嗨,我正在开发一个Angularjs应用程序。我有三个级联下拉列表。根据下拉列表中选择的值,我将div与从api接收的数据绑定(div与ng repeat)。我已经实现了分页

在页面加载时,我绑定第一个下拉列表

var arrMakes = new Array();
        $http.get(url + 'api' + '/Vehicle/' + 'GetVehicleMake').success(function (data) {
            $.map(data.data, function (item) {
                arrMakes.push(item);
            });
            $scope.list = arrMakes;
            var dynamicUrl = url + 'api' + '/Vehicle/' + 'Getcars/';
            //bind data to Div randomly.
            getcadetails(dynamicUrl);
        }).error(function (status) {
        });
 function getcadetails(baseurl)
       {
           var arrallcarDetails = new Array();
           $http.get(baseurl,{ params: $scope.pagingInfo }).success(function (data) {
                    $.map(data.data, function (item) {
                     arrallcarDetails.push(item);
                     });
                    $scope.carDetails = arrallcarDetails;
                    $scope.pagingInfo.totalItems = data.totalcount;
             }).error(function (status) {
             });
        }
getcadetails是我从不同场景调用的函数。例如 第一个下拉列表的ng更改事件

  $scope.getModel = function (selectedMake) {
 var selectedMakeData = selectedMake.ID;
             var arrModel = new Array();
            $http.get(url + 'api' + '/Vehicle/' + selectedMakeData + '/GetVehicleModel').success(function (data) {
                $.map(data.data, function (item) {
                    arrModel.push(item);
                });
                $scope.Modellist = arrModel;
                var dynamicUrl = url + 'api' + '/Vehicle/' + 'Getcars/' + '?MakeID=' + selectedMakeData;
                //bind data to Div randomly.
                getcadetails(dynamicUrl);
            }).error(function (status) {
            });
}
在分页中,我有以下函数。这是在我单击页码时执行的,例如1、2等

$scope.pageChanged = function (currentPage) {
                $scope.pagingInfo.pageNumber = currentPage;
                getcardetails();
            };

我的问题开始了。如果单击任何页码,将执行$scope.pageChanged函数。我将获得页码以将其发送到服务器。之后,我将调用getcadetails(?)。现在如何获取getcadetails的baseurl?我有没有更好的方法来实现这一点?任何帮助都将不胜感激。谢谢。

我想你可以为
selectedMakedData
定义一个变量,并定义一个创建url的函数。每次调用
getCardDetails()
u之前,都应该计算
dynamiccurl

代码如下所示:

var selectedMakeData = 0;

selection.addEventListener('change', () => {
     selectedMakeData  = newData;
});

$scope.pageChanged = function (currentPage) {
    var url = getUrl();

    $scope.pagingInfo.pageNumber = currentPage;        
    getcardetails(url);
};

function getUrl() {
    // return url baseed on selectedMakeData  
}