【发布时间】:2014-06-25 13:47:17
【问题描述】:
我希望在我的 MVC 项目中通过 AJAX 填充下拉列表。这样做时,“网络”调试工具在搜索我的 url 时显示 404,并且总是落入我的 AJAX 调用的错误函数中。
我的 Javascript 位于视图底部,如下所示:
function PopulateTournamentDropdown() {
$.ajax({
url: '/Leaderboard/PopulateTournamentDropDownList',
type: 'POST',
dataType: 'json',
contentType: 'application/json; charset=utf-8',
success: function (data) {
var ddlTournament = $("#ddlTournament");
ddlTournament.empty();
$.each(data, function (i, tournament) {
ddlTournament.append('<option value="' + tournament.Id + '">' + tournament.Name + '</option>');
});
},
error: function () {
alert('Failed to retrieve tournament.');
}
});
}
$(function () {
$('#ddlTournament').change(PopulateTournamentDropdown);
PopulateTournamentDropdown();
});
我的控制器如下:
public class LeaderboardController : Controller
{
public static string PopulateTournamentDropDownList()
{
var list = GetTournamentDetails();
return JsonConvert.SerializeObject(list, Newtonsoft.Json.Formatting.Indented, JsonSetting);
}
}
到目前为止,控制器中的方法从未被命中。
请帮忙。
【问题讨论】:
-
我不确定,但您不会从
'/Leaderboard/PopulateTournamentDropdown'中丢失List吗?应该是'/Leaderboard/PopulateTournamentDropdownList' -
我很抱歉。我复制错了。我确实在 URL 中包含了列表。
标签: javascript jquery ajax model-view-controller