加载资源失败:服务器响应状态为500(内部服务器错误)MVC JAVASCRIPT
Failed to load resource: the server responded with a status of 500 (Internal Server Error) MVC JAVASCRIPT
我试图从JavaScript视图到控制器发布2个参数,但我得到这个错误。不知道为什么…Failed to load resource: the server responded with a status of 500 (Internal Server Error)
transfer.js
$(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!");
}
});
});
});
[HttpPost]
public ActionResult TransferPlayer(int playerId, int newTeamId)
{
return Content(string.Format("Player {0} it is now at team {1}.", playerId, newTeamId));
}
,这是我的观点。我已经映射对象到数据库对象,但我能弄清楚为什么我得到这个500错误。需要一些帮助。我是mvc/javascript的新手
@model FotballTeamsProject.Models.PlayerModels.PlayerTransferModel
<script src="@Url.Content("~/Scripts/Player/Transfer.js")"></script>
<script type="text/javascript">
var transferUrl= "@Url.Action("TransferPlayer", "Player")";
</script>
<table>
<thead>
<tr>
<th>ID</th>
<th>Nume</th>
<th>Prenume</th>
<th></th>
<th>Skill</th>
<th>Valoare</th>
<th></th>
<th>Echipa Actuala</th>
<th style="margin-right: 10px;">Echipa Viitoare</th>
</tr>
</thead>
<tbody>
<tr>
<td id="id_player">@Model.Player.id_player</td>
<td>@Model.Player.player_firstname</td>
<td>@Model.Player.player_surname</td>
<td></td>
<td>@Model.Player.player_skill</td>
<td>@Model.Player.player_value</td>
<td></td>
<td>@Model.Player.name_team</td>
<td style="text-align: right;">
<select id="id_team">
<option selected="selected" value="0">Fara echipa</option>
@foreach (var teamInfo in Model.Teams)
{
<option value="@teamInfo.Key">@teamInfo.Value</option>
}
</select>
</td>
</tr>
</table>
</tbody>
<p>
<input id="transferPlayerButton" type="button" value="Transfera" />
</p>
在AJAX调用中,这样传递数据:
data: JSON.stringify({ playerId: playerId, newTeamId: teamId }),
当你发布数据时,它看起来像这样:
playerId=1&newTeamId=2
但是在AJAX设置中,contentType
被设置为'application/json;charset=utf-8',这意味着数据应该以json格式传递。因为数据没有以JSON格式传递,MVC模型绑定器无法完成它的工作并从请求体获取数据(因为它认为有JSON数据沿着妻子,由于contentType
)。
当你使用JSON时。字符串化数据将在请求体中像这样传递:
{
newTeamId: "2"
playerId: "1"
}
相关文章:
- SignalR:调用集线器方法时出现内部服务器错误
- 如何解决“;错误所请求的URL返回500-内部服务器错误”;
- 使用javascript API响应内部服务器错误将曲目上传到SoundCloud
- AJAX错误状态代码500内部服务器错误
- Python在尝试保存新的JSON文件时导致服务器错误
- Jcrop&画布:裁剪区域的大小很奇怪;500内部服务器错误
- 如果JS会话变量为null,如何避免500内部服务器错误
- 如何在getJSON中捕获服务器错误
- POST encodeURI查询字符串内部服务器错误 500
- getJSON:网络错误:500 内部服务器错误
- 如何捕获服务器错误 JS
- Node.js:Mongoose内部服务器错误
- 缺少用于创建的模板.内部服务器错误-聚合物表单保存到数据库
- Jquery AJAX Post:500(内部服务器错误)
- 我的联系表格在测试/PHPMailer后给了我一个内部服务器错误(500)
- 服务器错误消息的正确正则表达式
- 500(内部服务器错误)的外部php文件
- 当显示找不到服务器错误页面时,如何刷新页面/框架
- 如何使用ng-messages在Angularjs中显示服务器错误
- 内部服务器错误在 post 请求中使用 Angular js 中的自定义服务