【问题标题】:Async requests to model-bound action methods with JQuery使用 JQuery 对模型绑定操作方法的异步请求
【发布时间】:2009-04-10 20:19:07
【问题描述】:

我有一个 ASP.NET MVC 操作方法,它使用模型绑定来接受强类型模型对象作为其输入,即:

public PartialViewResult SaveUser([Bind(Prefix = "User")]User NewUser)
{
}

使用 JQuery 异步请求此方法时如何指定参数?我以前使用 load() 或 post() 方法来发出异步请求,但这只有一两个命名参数。如何将带有异步请求的整个表单数据传递给此方法?

这是我尝试过的一种方法:

$.post('/Users/SaveUser/', { NewUser: $('#theForm') }, function(responseText, status) {
    $('#mainContent').text(responseText);
}, 'html');

我在action方法中加了一个断点,NewUser参数为null。

我完全不接受这种方法吗?非常感谢任何帮助。

谢谢。

【问题讨论】:

    标签: jquery asp.net-mvc ajax


    【解决方案1】:

    您需要在输入名称及其值之间创建映射。模型绑定器将期望看到:

    User.Name=username
    User.FirstName=Bill
    User.LastName=Gates
    ...
    

    作为请求的表单参数。尝试使用serialize 方法。

    $('form').serialize()
    

    为 AJAX 调用构造参数。

    【讨论】:

    • 这很好,谢谢!我从来不知道序列化方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-20
    • 1970-01-01
    • 2013-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多