2017-05-07 109 views
0

只是想在asp.net mvc上学习ajax,但不知道它有什么问题吗?ASP .NET MVC Ajax请求内部服务器错误?

我的控制器类方法=>

[HttpPost] 
    public JsonResult Getdata(string batchcode) 
    { 
     ///var studentid = db.Studentassignbatches.Where(x => x.batch_code == batchcode).Select(x => new Studentassignbatche { UserId = x.UserId }).ToList(); 
     return Json("hi",JsonRequestBehavior.DenyGet); 
    } 

和我的视图和AJAX请求>

<select onchange="ShowBatchCode()" id="BatchList" class="form-control input-lg"> 
     <option class="pull-left" value="CCNA Security-1">CCNA Security-1</option> 
     <option class="pull-left" value="CCNA Security-2">CCNA Security-2</option> 
     <option class="pull-left" value="JNCSP-SEC-1">JNCSP-SEC-1</option> 
     <option class="pull-left" value="Oracle Database 12c-1">Oracle Database 12c-1</option> 
</select> 

和AJAX =>

<script type="text/javascript"> 
function ShowBatchCode() { 
    var batchcode = $('#BatchList').val(); 
    $.ajax({ 
     type: 'POST', 
     dataType: 'json', 
     contentType: 'application/json', 
     url: 'Getdata', 
     data: { batchcode: batchcode }, 
     success: function (data) { 
      alert(data); 
     }, 
     error: function (result) { 
      alert('Something Went Wrong!'); 
     } 
    }); 
} 

,它总是显示我警告“有些事情发生了翁!”。所以我调试我的网页,我发现=> enter image description here

505内部服务器Error.i不知道如何解决it.and尝试删除 [Httppost],并尝试使用

data: batchcode, 

但没有什么适用于我。请帮我吗?任何人!!!!!

+0

contentType:'application/json',,您需要将数据更改为json –

+0

data:JSON.stringify({batchcode:batchcode}) –

+0

尝试给控制器名称,如果名称是YourController,那么url应该是'Your/Getdata' – User3250

回答

1

您表示:

contentType: 'application/json', 

,但你送application/x-www-form-urlencoded这里:

data: { batchcode: batchcode }, 

因此,无论摆脱contentType: 'application/json'线或确保您发送JSON到服务器:

data: JSON.stringify({ batchcode: batchcode }), 
+0

不适用于我! –

+0

服务器的确切响应体是什么?您可以从浏览器的开发人员工具栏中看到它。 –

+0

http://s30.postimg.org/jhlhl7ke9/Capture.png –

相关问题