我使用tempData来保存从数据库返回到控制器的消息,然后在视图中使用它。它一直有效,直到我发布ajax调用来发布数据。
[HttpPost]
public ActionResult AddAppointment(AddBookingsViewModel AddBookingVM) {
BookingsRepository BookingRep = new BookingsRepository();
if (ModelState.IsValid) {
int ReturnRowsCount = BookingRep.InsertCustomerAppointments(AddBookingVM, out ReturnStatus, out ReturnMessage, out ReturnBookingID);
if (ReturnRowsCount > 0){
TempData["Message"] = ReturnMessage;
}
else {
TempData["Message"] = ReturnMessage;
}
}
else {
TempData["Message"] = "Some fields are required";
}
return View(AddBookingVM);
}
查看:
@model ZahidCarWash.ViewModels.AddBookingsViewModel
@{
ViewBag.Title = "Add Appointment";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div id="divMessage" class="alert alert-info fade in MessageStrip">
<a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>
@TempData["Message"].ToString()
</div>
@if (!string.IsNullOrEmpty(TempData["Message"].ToString())) {
<script type="text/javascript">$("#divMessage").show();</script>
}
else {
<script type="text/javascript">$("#divMessage").hide();</script>
}
ajax的电话:
$('form').submit(function (e) {
e.preventDefault();
if (!$(this).valid()) {
return;
}
var url = '@Url.Action("AddAppointment")';
var data = $(this).serialize();
$.post(url, data, function (response) {
});
});
当我在开始使用Form.Post时它正在工作但是当我开始使用ajax调用时它停止工作。
我设置了一个断点,它到达那里但没有显示。
为什么?