powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / MVC аналог ClickButton как в WebForms
7 сообщений из 7, страница 1 из 1
MVC аналог ClickButton как в WebForms
    #39254672
e24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
e24
Гость
Подскажите, как реализовать аналог WebForms клика на Батон без переадресации на страницу "Method1"?
То есть оставаясь на той же странице (по тому же адресу) и вывести на страницу сообщение, через ViewData["Msg"]

HTML:
Код: c#
1.
2.
3.
4.
5.
6.
@using (Html.BeginForm("Method1", "Controller1", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
    <button type="submit" name="btn1" id="btn1" >
        <span>Кнопка1</span>
    </button>
}



Сервер:
Код: c#
1.
2.
3.
4.
5.
6.
7.
public ActionResult Method1()
{
    ViewData["Msg"] = "Сообщение ...";
    return View();
    //return View();
    //return RedirectToAction("../Controller1/");
}



То есть мне надо вывести сообщение на той же странице на которой нажали на кнопку.
Заранее спасибо!
...
Рейтинг: 0 / 0
MVC аналог ClickButton как в WebForms
    #39254708
Monochromatique
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
e24То есть мне надо вывести сообщение на той же странице на которой нажали на кнопку.
Заранее спасибо!

Это среда JS.

Если твое сообщение от чего то зависит, то единственный метод:

1. Нажимаем кнопку.
2. JS-код посылает запрос на сервер.
3. Оттуда возвращается мессага в JSON, скажем, фоормате.
4. В JS-callback-е обрабатывается вывод сообщения на страницу.

Когда ты нажимаешь кнопку, страница в душе ничего не знает ни про какой ViewData. И не узнает.

ASP.NET MVC может две вещи.

1. Вернуть по запросу кусок HTML-разметки.
2. Вернуть по запросу некоторые данные.

Всё.
...
Рейтинг: 0 / 0
MVC аналог ClickButton как в WebForms
    #39254710
Monochromatique
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как вариант, при нажатии кнопки - ты можешь заново отрендерить страницу, со вставленным сообщением. И вернуть её.

Визуально это будет как "на той же странице".

Фактически - конечно нет.

WebForms, кстати, так и делал.
...
Рейтинг: 0 / 0
MVC аналог ClickButton как в WebForms
    #39254734
e24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
e24
Гость
Мне надо без JS.
И вот самое главное, что бы адресная строка не менялась.
...
Рейтинг: 0 / 0
MVC аналог ClickButton как в WebForms
    #39254744
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
e24Мне надо без JS.
И вот самое главное, что бы адресная строка не менялась.
Без JS не получится, ну разве что через iframe.
В WebForms JavaScript генерируется за Вас теми компонентами, что Вы используете.

В MVC посмотрите на Ajax-Формы
...
Рейтинг: 0 / 0
MVC аналог ClickButton как в WebForms
    #39254747
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
e24, ну или так...

HTML:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
$(function() {
    $('#btn1').click(function() {
        $.getJSON('controllerName/Method1', function(result) {
            alert(result.Msg);
        });
    });
});



Сервер:
Код: c#
1.
2.
3.
4.
public ActionResult Method1()
{
    return Json(new { Msg = "Сообщение ..." });
}
...
Рейтинг: 0 / 0
MVC аналог ClickButton как в WebForms
    #39255203
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
e24Мне надо без JS.
И вот самое главное, что бы адресная строка не менялась.
По нажатию кнопки вызывается HttpPost событие, на котором заполняется TempData["Msg"], делается RedirectToAction того же метода HttpGet, где проверяется на Null считывается TempData["Msg"], если не Null, то заполняется ViewData["Msg"] и открывается тот же самый View который проверяет ViewData["Msg"] и показывает сообщение.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / MVC аналог ClickButton как в WebForms
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]