Я пытаюсь отправить 2 парама из представления с JavaScript в Controler, но я получаю эту ошибку. Не знаю, почему .. Failed to load resource: the server responded with a status of 500 (Internal Server Error)
Не удалось загрузить ресурс: сервер ответил со статусом 500 (Внутренняя ошибка сервера) MVC JAVASCRIPT
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));
}
и это мой VI РЭБ. Я был привязан к объекту базы данных obj, но я понимаю, почему я получаю эту ошибку 500. Нужна помощь. I`ma новичок в 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>
Я не уверен, если это основная причина, но .value на ячейку таблицы не даст вы используете id_player, вместо этого вы должны использовать innerText. Это может привести к тому, что playerId будет пустым в вашем сообщении. Вы пытались поставить точку останова на свой метод Action и отлаживать? Удалась ли ваша точка останова? Каковы значения параметров, если они есть? – John
Да, я поставил точку останова, и он не попал. –
сначала положил js 'Transfer.js' непосредственно перед тегом body – wiretext