无法加载资源:服务器响应状态为500(内部服务器错误)MVC JAVASCRIPT

时间:2015-08-06 12:10:40

标签: javascript asp.net-mvc

我正在尝试将带有JavaScript的视图中的2个参数发布到Controler,但我收到此错误。不知道为什么.. [IS_HOME]/repository/components/lib

transfer.js import java.awt.color.ColorSpace; import java.util.Arrays; public class CIEXYZ { private final static float[] RGB = new float[] {255.0f, 255.0f, 255.0f}; private final static ColorSpace CIEXYZ = ColorSpace.getInstance(ColorSpace.CS_CIEXYZ); public static void main(String[] args) { System.out.println("RGB: " + Arrays.toString(RGB)); System.out.println("CIEXYZ: " + Arrays.toString(CIEXYZ.fromRGB(RGB))); } }

Failed to load resource: the server responded with a status of 500 (Internal Server Error)

$(document).ready(function () { $("#transferPlayerButton").click(function () {

控制器

    var playerId = document.getElementById("id_player").value;
    var teamId = document.getElementById("id_team").value;

    $.ajax({
        type: 'post',
        url: '/Player/TransferPlayer',
        data:
            {
                playerId: playerId,
                newTeamId: teamId
            },
        contentType: 'application/json;charset=utf-8',
        dataType: 'json',
        success: function (data) {
            alert("Success!");
        }


    });

});

这是我的看法。我已经将对象映射到数据库obj,但我想知道为什么我得到这个500错误。需要一些帮助。我是mvc / javascript的新手

});

1 个答案:

答案 0 :(得分:0)

在AJAX调用中,传递数据如下:

data: JSON.stringify({ playerId: playerId, newTeamId: teamId }),

按原样发布数据时,它看起来像这样:

playerId=1&newTeamId=2

但在您的AJAX设置中,contentType设置为' application / json; charset = utf-8'这意味着数据应以JSON格式传递。因为数据没有以JSON格式传递,所以MVC模型绑定器无法完成它的工作并从请求体获取数据(因为它认为由于{存在JSON数据) {1}})。

当您使用JSON.stringify时,数据将在请求正文中以这样的方式传递:

contentType