如何在AngularJS控制器中更改后变量值?

时间:2016-01-25 04:03:50

标签: angularjs angularjs-controller angularjs-ng-click

我有两个按钮,每个按钮都有ng-click事件,click事件调用一个方法,该方法有一个参数。

我希望通过AngularJS Controller的HTTP POST将参数的值传递给服务端。

AngularJS函数CustomerGender(索引),我希望将索引值传递给服务。

<div ng-app="Customer" ng-controller="CustomerCtrl">
    <button ng-click="CustomerGender('Male')">List of Male Customers</button>
    <button ng-click="CustomerGender('FeMale')">List of Female Customers</button>
</div>

AngularJS源代码:

  

注意:网址http://www.w3schools.com/angular/customers.php是   示例网址

var CustomerApp = angular.module('Customer', []);
CustomerApp.controller('CustomerCtrl', function($scope, $http, $cacheFactory) {

    $scope.CustomerGender = function(index){

        var request = $http({
            method: "post",
            url: "http://www.w3schools.com/angular/customers.php",
            data: {
                token: index
            },
            headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
        });
        request.success(function (response) 
        {
            $scope.data = response.records;
        });
    };
});

功能不起作用。如果我直接在Controller中设置令牌:'男性',那么它会将值传递给服务,如果我设置令牌:索引,则它无法通过对服务的价值。请帮助我。

1 个答案:

答案 0 :(得分:0)

当我尝试使用您的代码发布到w3schools链接时,它会阻止请求。当我尝试使用https://httpbin.org/post这样的不同端点时似乎工作正常。

Here是一名工作人员。