ASP.NET MVC中jQuery与angularjs混合应用传参并绑定数据

Posted Insus.NET

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.NET MVC中jQuery与angularjs混合应用传参并绑定数据相关的知识,希望对你有一定的参考价值。

要求是这样子的,在一个列表页中,用户点击详细铵钮,带记录的主键值至另一页。
在另一外页中,获取记录数据,然后显示此记录数据在网页上。

先用动图演示:

 

昨天有分享为ng-click传递参数 《angularjs为ng-click事件传递参数http://www.cnblogs.com/insus/p/7017737.html

 
上面仅仅是在ng-click传入一个值,但是在ASP.NET MVC中,还需要把这个值传至另外一个视图中《ASP.NET MVC传递参数(model)http://www.cnblogs.com/insus/p/6148167.html

 

 

$scope.Detail = function (code) {

            var objects = {};
            objects.Key = code;
            objects.Value = "";
            objects.Controller = "Code";
            objects.Action = "ClauseDetail";

            $http({
                method: \'POST\',
                url: \'/Pass/Redirect\',
                dataType: \'json\',
                headers: {
                    \'Content-Type\': \'application/json; charset=utf-8\'
                },
                data: JSON.stringify(objects),
            }).then(
                 function success(response) {
                     if (response.data.Success) {                        
                         window.location.href = response.data.RedirectUrl;
                     }
                     else {
                         alert(response.data.ExceptionMessage);
                     }
                 },
                function error(error) {
                    alert(response.error.data);
                });
        };
Source Code

 

在ASP.NET MVC的控制器的Action接收参数,获取数据库的数据:

 

 public ActionResult ClauseDetail()
        {
            if (TempData["Pass"] == null)
                return RedirectToAction("Clause", "Code");

            var pass = TempData["Pass"] as Pass;
            TempData["Pass"] = pass;

            Clause c = new Models.Clause();
            c.Code = pass.Key.ToString();

            ClauseEntity ce = new ClauseEntity();
            var model = ce.ClauseByKey(c).FirstOrDefault();
            return View(model);
        }
Source Code

 
上面从数据库获取数据后,给视图一个model。下面是本篇所说的重点,怎样把ASP.NET MVC的model传给angularjs ng-model:

 

 

传递与绑定在#3。

 

以上是关于ASP.NET MVC中jQuery与angularjs混合应用传参并绑定数据的主要内容,如果未能解决你的问题,请参考以下文章

jQuery Grid With ASP.Net MVC

如何在ASP.NET MVC5中正确包含jQuery与knockout.js

ASP.NET MVC jQuery 自动完成与页面中包含的脚本中的 url.action 助手

ASP.Net MVC:具有动态列的 Jquery 数据表与 JSON 绑定

ASP.NET MVC 3 - Ajax.BeginForm 与 jQuery 表单插件

ASP.NET MVC中jQuery与angularjs混合应用传参并绑定数据