这是我的Ajax调用,我正在调用一个更新数据库的API,我希望在函数成功时重新加载页面。
$("#Pendingbookings").on("click", ".AcceptBooking", function () {
var button = $(this);
bootbox.confirm("Are you sure you want to accept this booking?", function (result) {
if (result) {
var Booking = { BookingID: button.attr("data-BookingId") }
var url_redirect = '@Url.Action("GetBookingsByStatus", "Booking")';
$.ajax({
url: "/api/AcceptBooking/AcceptBooking",
method: "PUT",
data: Booking,
dataType: 'json',
success: function (response) {
window.location.href = url_redirect;
}
});
}
});
});
Ajax调用运行良好,数据会在数据库中更新,但它不会在成功调用时重新加载页面或调用操作方法
API接口
[HttpPut]
public IHttpActionResult AcceptBooking(Booking BookingID)
{
//Write the function to update booking and accept it.
if (!ModelState.IsValid)
{
return BadRequest();
}
int bookingID = BookingID.BookingID;
var bookingInDB = _context.Booking.SingleOrDefault(c => c.BookingID == bookingID);
if (bookingInDB == null)
{
return NotFound();
}
else
{
bookingInDB.BookingAccepted = true;
}
_context.Entry(bookingInDB).State = EntityState.Modified;
_context.SaveChanges();
return Ok();
}
发布于 2019-05-23 06:32:54
请尝试从ajax调用中删除dataType。
$.ajax({
url: "/api/AcceptBooking/AcceptBooking",
method: "PUT",
data: Booking,
success: function (response) {
window.location.href = url_redirect;
}
});
https://stackoverflow.com/questions/56264635
复制相似问题