我遇到过以前有效但现在无效的代码问题。问题是我从我的cshtml类调用一个名为GetRooms的Controller,但是我收到了404错误。
控制器:
public virtual ActionResult GetRooms(Guid unitId, Guid interviewId, DateTime date, DateTime startTime, DateTime endTime)
{
}
在我的cshtml类中,我实现了一个带参数的getJSON请求:
function getRoomsInUnit(unitId, interviewId, date, startTime, endTime) {
$.getJSON('/CitizenMentor/GetRooms', { unitId: unitId, interviewId: interviewId, date: date, startTime: startTime, endTime: endTime }, function (result) {
var list = $('#SelectedRoomResourceId');
list.find('option').remove();
$(result).each(function (index, room) {
list.append('<option value="' + room.Id + '">' + room.Title + '</option>');
});
});
};
当我运行代码时,我收到404错误,指出无法找到带参数的控制器。我似乎无法找出为什么会发生这种情况。也许它是我的查询发送的时间戳?
答案 0 :(得分:2)
尝试更改此链接并使用ajax。
var roomDetails =
{ unitId: unitId,
interviewId: interviewId,
date: date,
startTime: startTime,
endTime: endTime
}
$.ajax({
url: '@Url.Action("GetRooms", "CitizenMentor")',
type: 'GET',
data: roomDetails ,
success: function (data) {
var list = $('#SelectedRoomResourceId');
list.find('option').remove();
$(result).each(function (index, room) {
list.append('<option value="' + room.Id + '">' + room.Title +'</option>');
}
},
error: function () {
alert("something seems wrong", "Error");
}