如何点击按钮调用angularJs服务

How to call angularJs service on button click?

本文关键字:angularJs 服务 调用 按钮 何点击      更新时间:2023-09-26

我有这个AngularJS服务控制器代码。

 angular.module('myModule', []).service("AttendanceService", function ($http) {
        this.getdata = function () {
            return $http({
                method: "post",
                url: "Dashboard/GetAttendanceReport",
                params: [{ EmpID: $("#nameofEmp").val(), YearID: $("#YearIn").val() }],
                dataType: "json"
            });
        };
}).controller('myController', function ($scope, AttendanceService) {
        GetAlldata();
        function GetAlldata()
           {
            var getAttendanceData = AttendanceService.getdata();  
           }
            })

我想要的只是简单地调用上述服务,即

return $http({
                method: "post",
                url: "Dashboard/GetAttendanceReport",
                params: [{ EmpID: $("#nameofEmp").val(), YearID: $("#YearIn").val() }],
                dataType: "json"
            });

点击按钮

   $("#btnLoad").click(function (event) {
    });

有可能吗?我对此很陌生。。。

You need to change your factory like this :
    angular.module('myModule', []).service("AttendanceService", function ($http) {            
            var fac = {};
            fac.getdata = function () {
                return $http({
                    method: "post",
                    url: "Dashboard/GetAttendanceReport",
                    params: [{ EmpID: $("#nameofEmp").val(), YearID: $("#YearIn").val() }],
                    dataType: "json"
                });
            };
return fac;
})

$("#btnLoad").click(function (event) {
         AttendanceService.getdata();
    });