JQuery将模型传递给控制器

时间:2011-02-24 15:22:56

标签: jquery ajax asp.net-mvc-2 model

我想将mvc页面模型传递回Javascript对象中的控制器。我该怎么做?

var urlString = "<%= System.Web.VirtualPathUtility.ToAbsolute("~/mvc/Indications.cfc/ExportToExcel")%>";
        var jsonNickname =
                {
                    model: Model,
                    viewName: "<%= VirtualPathUtility.ToAbsolute("~/Views/Indications/TermSheetViews/Swap/CashFlows.aspx")%>",
                    fileName: 'Cashflows.xls'
                }
        $.ajax({
            type: "POST",
            url: urlString,
            data: jsonNickname,
            async: false,
            success: function (data) {
                $('#termSheetPrinted').append(data);
            }
        });

所以它说model: Model,我希望Model成为我在页面顶部声明的实际页面模型:

Inherits="System.Web.Mvc.ViewPage<Chatham.Web.Models.Indications.SwapModel>"

我该怎么做?

1 个答案:

答案 0 :(得分:2)

Html POST和GET都是关于名称/值对... MVC评估名称以查看它们是否可以映射到Action参数(在本例中为您的模型)。有了这些基本知识,您可以使用Model的属性作为名称/值对的“名称”部分,将Model数据序列化为名称/值对,从而将Model数据传递给Action方法。