Я пытаюсь, как говорится в заголовке, вернуть Json-сообщение от контроллера к представлению после его проверки.Возврат данных Json от контроллера для просмотра ASP.NET MVC
Я сделал точку останова, и я знаю, что код работает со стороны контроллера, и что мой JavaScript с успехом называет ActionResult сейчас. Как отобразить это сообщение в представлении?
Есть две кнопки, печать и штамп. Если пользователь печатает дважды, он должен получить сообщение, то же самое с печатью. У меня есть два ActionResults, которые являются indentical, кроме некоторых сообщений и изменений строки.
Контроллер:
[HttpPost]
public ActionResult CreateStamp(Stamping stampingmodel)
{
var validateMsg = "";
stampingmodel.Timestamp = DateTime.Now;
stampingmodel.StampingType = "in";
if (stampingmodel.User == null || ModelState.IsValid)
{
var idValidated = db.Users.Find(model.UserId);
if (idValidated != null)
{
var stamp =
db.Stampings.Where(s => s.UserId == stampingmodel.UserId)
.OrderByDescending(s => s.Timestamp)
.FirstOrDefault();
if (stamp.StampingType == stampingmodel.StampingType)
{
if (stampingmodel.StampingType == "in")
{
validateMsg = "Stamped Twice In A Row!";
}
}
else
{
if (stampingmodel.StampingType == "in")
{
validateMsg = "Stamped In, Welcome.";
}
}
}
db.Stampings.Add(stampingmodel);
db.SaveChanges();
}
return Json(new {Message = validateMsg });
JavaScript:
$(document).ready(function() {
$("#stampInBtn").click(function() {
var userId = $("#userId").val();
$.ajax({
url: "ComeAndGo/CreateStamp",
type: "POST",
dataType: "json",
data: {
userId: userId,
}
});
});
Вид:
<input type="text" id="idUser" class="form-control" />
<br />
<input type="submit" value="IN" id="stampInBtn" />
У меня есть больше кода внутри Вид конечно; divs, head, body, title и scripts. Но это, пожалуй, немного неуместно.
Что делать, чтобы успешно показывать эти сообщения?
С уважением.
Добавить функцию успеха. '$ .ajax ({....., success: function (data) {...' (где значение данных будет тем, что было возвращено сервером) –
Я не понимаю, не могли бы вы уточнить, пожалуйста? – Qvadriologic