简体   繁体   English

Ajax发布请求中的内部服务器错误

[英]Internal server error in ajax post request

在此处输入图片说明 Guys I have problem with my ajax post request and it is not working for some dates ie it does not hits controller but for some dates it works fine please help me to find out the bug Here is my code 伙计们,我的ajax发布请求有问题,并且在某些日期不起作用,即它没有命中控制器,但在某些日期却可以正常工作,请帮助我找出错误,这是我的代码

$("#getInfo").click(function ()
{
    var elementValue = document.getElementById("tournamentID").value;
    var startDateValue = document.getElementById("filterDateStartnew").value;
    if (elementValue == null || elementValue == "" || startDateValue == null || startDateValue == "")
        {
            alert("please enter TournamentID and timestamp to get Info");
            return false;
        }
    $.ajax({
        type: "POST",
        cache: false,
        url: '/reports/gettournamentinfo',
        data: { tournamentID: elementValue,date: startDateValue },
        success: function (data)
        {
            var select = document.getElementById("TournamentLevel");
            var length = select.options.length;
            //Delete All Options
            $('#TournamentLevel')
                .find('option')
                .remove()
                .end()
            var opt = document.createElement("option");
            opt.text = "Any";
            opt.value = -1;
            document.getElementById("TournamentLevel").options.add(opt);
            var count = data[0];
            for (var i = 1; i <= count; i++)
            {
                var opt = document.createElement("option");
                opt.text = i;
                opt.value = i;
                document.getElementById("TournamentLevel").options.add(opt);
            }

            for (var index = 1; index < data.length; ++index)
            {
                var opt = document.createElement("option");
                opt.text = data[index];
                opt.value = data[index];
                document.getElementById("RunID").options.add(opt);
            }
            $("#SubmitForm").removeAttr('disabled');
        },
        error: function(data)
        {
            alert("there was no info for that tournamentID and that date");
            $.unblockUI();
            $('#TournamentLevel')
.find('option')
.remove()
.end()
            return false;
        }
    });

        return false;
});

Check for the data formats. 检查数据格式。 For example if the client using dd/mm/yyyy and the server is expecting mm/dd/yyyy, you will see a HTTP 500 error as the model binder will fail to do the binding 例如,如果客户端使用dd / mm / yyyy,而服务器期望使用mm / dd / yyyy,则您将看到HTTP 500错误,因为模型绑定程序将无法执行绑定

Change your ajax post method like below. 如下更改您的ajax发布方法。

$.ajax({ url: "/reports/gettournamentinfo", contentType: "application/json; charset=utf-8", type: "POST",
                data: '{"tournamentID":"' + elementValue+ '", "date":"' + startDateValue + '"}',
                success: function (data) {      
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {  }
            });

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM