AngularJs Post 提交 改造

來源:互聯網
上載者:User

AngularJs Post 提交 改造

C#後台可通過Request["xxxx"].ToString()進行擷取相對應的Form表單參數

Html 代碼

 

<script type="text/javascript" src="js/lib/angular.min.js" ></script>

AngularJs 控制器改造

 

        var app = angular.module("formApp", [], function ($httpProvider) {            $httpProvider.defaults.headers.post["Content-Type"] = "application/x-www-form-urlencoded;charset=utf-8";            $httpProvider.defaults.headers.put['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8';            var param = function (obj) {                var query = "", name, value, fullSubName, subName, subValue, innerObj, i;                for (name in obj) {                    value = obj[name];                    if (value instanceof Array) {                        for (i = 0; i < value.length; ++i) {                            subValue = value[i];                            fullSubName = name + "[" + i + "]";                            innerObj = {};                            innerObj[fullSubName] = subValue;                            query += param(innerObj) + "&";                        }                    } else if (value instanceof Object) {                        for (subName in value) {                            subValue = value[subName];                            fullSubName = name + "[" + subName + "]";                            innerObj = {};                            innerObj[fullSubName] = subValue;                            query += param(innerObj) + "&";                        }                    } else if (value !== undefined && value !== null) {                        query += encodeURIComponent(name) + "=" + encodeURIComponent(value) + "&";                    }                }                return query.length ? query.substr(0, query.length - 1) : query;            };            $httpProvider.defaults.transformRequest = [function (data) {                return angular.isObject(data) && String(data) !== "[object File]" ? param(data) : data;            }];        });

調用方法:

 

        app.controller("formController", function ($scope, $http) {            $scope.formData = {};            $scope.processForm = function () {                console.log("測試一下"+$scope.formData);                $http.post("http://218.244.144.162:8094/Service/JobInterface.ashx",$scope.formData).success(function(data){                    console.log(data);                }).error(function(data){                    console.log(data);                    console.log("失敗");                });            }        });

C#後台編寫,使用一般處理常式進行編寫介面

 

 

        #region 全域變數        bool dev = true;        #endregion        #region 處理HTTP請求        public void ProcessRequest(HttpContext context)        {            context.Response.Cache.SetNoStore();//禁止自動緩衝            context.Response.Clear();            context.Response.ContentType = "application/json";            if (dev)            {                context.Response.Headers.Add("Access-Control-Allow-Origin", "*");                context.Response.Headers.Add("Access-Control-Allow-Headers", "X-Requested-With");            }            string action = "";            string temp = "";            try            {                action = context.Request["act"].ToString();                //action = context.Request.Form["act"].ToString();                temp = GetActionResult(action);            }            catch (Exception e)            {                temp = e.ToString();            }            //輸出資料            context.Response.Write(temp);        }        #endregion        #region 返回操作結果        ///         /// 返回操作結果        ///         ///操作        ///         private static string GetActionResult(string action)        {            string result = "無資料";            switch (action)            {                case "GetJobByPage":                    result = GetJobInfoByPage();                    break;                case "AddJob":                    result = AddJob();                    break;            }            return result;        }        #endregion        #region 商務邏輯        #region 添加        ///         /// 添加職位        ///         ///         private static string AddJob()        {            Job model = new Job();            model.ID = 0;            model.Name = HttpContext.Current.Request["name"];            //model.Name = HttpContext.Current.Request.Form["name"].ToString();            return JobController.AddJob(model);        }        #endregion


 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.