Как показать Messagebox из контроллера MVC
-
18-09-2019 - |
Вопрос
кто-нибудь может, пожалуйста, рассказать о отображении окна сообщения с контроллера MVC?Сценарий таков - Я хочу показать окно сообщения с кнопками "Да" / "Нет".Нажав "Да", я хочу показать окно с подтверждением.Я хочу сделать это с помощью контроллера MVC?Как я могу это сделать?
Заранее спасибо, Kaps
Решение
if (confirm('Are you sure?'))
{
$.post("Confirmation", {myresponse: 'yes'}, function(data)
{
$.("#mymodal").html(data);
}
}
Таким образом, он попадает в actionmethod и сообщает ему, что было получено подтверждение "да", и actionmethod может отправить обратно html-разметку.
Другие советы
Вы говорите о окне сообщения клиента?Если это так, попробуйте использовать диалоговое окно подтверждения JavaScript.
if (confirm('Are you sure?')){}
Метод действия контроллера обычно не управляет тем, что отображает представление, скорее он просто указывает, какое представление отображать (т.е.Возврат this.View("MyView")
) и данные, которые представление должно использовать для рендеринга самого себя, если это необходимо.
Вы можете использовать JavaScriptResult
однако вы несколько нарушаете разделение задач, контроллер должен диктовать, какое представление отображать, а не то, что содержит представление.
Вот хорошая статья о JavaScriptResult и о том, почему это плохая идея: http://devlicio.us/blogs/billy_mccafferty/archive/2009/02/07/beware-of-asp-net-mvc-javascriptresult.aspx
Я думаю, вы хотите сделать что-то вроде этого:
http://net.tutsplus.com/tutorials/javascript-ajax/5-ways-to-make-ajax-calls-with-jquery/
На стороне контроллера вы хотите, чтобы метод возвращал json.