Json stringify问题

时间:2011-11-01 17:54:50

标签: jquery asp.net-mvc

var User = new Object();

        User.Id = 0;
        User.Username = $("#username").val();
        User.Password = $("#password").val();

        var jsonText = JSON.stringify(User);


        jsonText = "{\"User\" : " + JSON.stringify(User) + "}";
        alert(jsonText);

 $.ajax({
            url: '/Main/Submit/',
            type: 'POST',
            dataType: 'json',
            data: jsonText,
            contentType: 'application/json',
            success: function (data) {
                // get the result and do some magic with it
                var message = data.Message;
                $("#resultMessage").html(message);
            }
        });


public ActionResult Submit(User User)
           {
           }

在MVC功能中,用户实体不包含值。

1 个答案:

答案 0 :(得分:0)

您不需要将对象字符串化为JSON字符串,只需发送对象即可。如果User是您的参数名称,则以下内容应该有效(我更改了一些语法以简化它)。

var User = {
    Id: 0,
    Username:  $("#username").val(),
    Password: $("#password").val()
};

$.post('<%= Url.Action("Submit", "Main") %>', { User: User }, function (data) {
    // get the result and do some magic with it
    var message = data.Message;
    $("#resultMessage").html(message);
});