powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / MVC - Почему в jQuery "submit" это не совсем "submit"?
7 сообщений из 7, страница 1 из 1
MVC - Почему в jQuery "submit" это не совсем "submit"?
    #39674938
ValGer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Известно, что <a> или ActionLink( ... ) может благополучно отправить в нужное место контроллера, но данные формы передать не в состоянии, поскольку не формирует submit. Но, вроде бы, если привинтить скрипт, который по щелчку на якорном элементе формы будет формировать submit (.trigger("submit")), то проблема разрешиться. Но не тут-то было! Вот простейшая программка:
Контроллер
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
using System;
using System.Collections.Generic;
using System.Web.Mvc;

namespace RedirectToAction.Controllers
{
    public class HomeController : Controller
    {
        [HttpGet]
        public ActionResult Index()
        {
            return View();
        }

        [HttpPost]
        public ActionResult Index(MainClass mainClass)
        {
            return View(mainClass);
        }
    }

    public class MainClass
    {
        public int НомерРаботника { get; set; }
        public string fioDirektora { get; set; }
    }

}



Представление (типизированное)
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
@model RedirectToAction.Controllers.MainClass

<script type="text/javascript">
    $(function ()
    {
        function ClickActionLink()
        {
            $("#idForm").trigger("submit");
        };

        function init()
        {
            $("#idActionLink").bind("click", ClickActionLink);
        };

        $(init);
    })
</script>

<style type="text/css">

</style>

@{
    ViewBag.Title = "Index";
}

<div class="container">
    <h2>submit через ActionLink </h2>
    @using (Html.BeginForm("Index", "Home", FormMethod.Post, new { id = "idForm" }))
    {
        if (Model == null)
        {
            @Html.TextBoxFor(x => x.НомерРаботника, "",
                     new { @style = "width: 60px; padding-left: 3px;", @Value = "1234" })
            @Html.TextBoxFor(x => x.fioDirektora, "",
                     new { @style = "width: 200px; padding-left: 3px;", @Value = "Введите фамилию" });
        }
        else
        {
            @Html.TextBoxFor(x => x.НомерРаботника, "",
                     new { @style = "width: 60px; padding-left: 3px;" })
            @Html.TextBoxFor(x => x.fioDirektora, "",
                     new { @style = "width: 200px; padding-left: 3px;" });
        }
        



        <div class="btn btn-default">
            @Html.ActionLink("Сохранить", "Index", "Home",                      
                              new { id = "idActionLink" })
        </div>
        @*<input type="submit" value="Сохранить" />*@
    }
</div>



(input пока закомментировано)
Исходный вариант представлен на рисунке 1
После ввода информации в поля формы (рисунок 2) при щелчке на ActionLink (скрипт выдаёт "submit") данные благополучно воспринимаются Post-методом Index (рисунок 3), но потом в модели не сохраняются, то есть появляется исходный вариант (рисунок 1).
Если submit формируется <input ... /> , то всё в полном порядке - данные принимаются сервером (Рис. 3), а затем благополучно появляются и на форме (рисунок 2). То есть, в данном варианте с input модель сохраняется на сервере.
В чём проблема!?
С уважением ...
...
Рейтинг: 0 / 0
MVC - Почему в jQuery "submit" это не совсем "submit"?
    #39674949
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValGerИзвестно, что <a> или ActionLink( ... ) может благополучно отправить в нужное место контроллера, но данные формы передать не в состоянии, поскольку не формирует submit. Но, вроде бы, если привинтитьниче не понял.
Зачем на линк перехода прикручивать сабмит?
...
Рейтинг: 0 / 0
MVC - Почему в jQuery "submit" это не совсем "submit"?
    #39675089
ValGer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123ValGerИзвестно, что <a> или ActionLink( ... ) может благополучно отправить в нужное место контроллера, но
данные формы передать не в состоянии, поскольку не формирует submit. Но, вроде бы, если привинтитьниче не понял.
Зачем на линк перехода прикручивать сабмит?

Это другой вопрос, а по существу что-нибудь можете сказать?
С уважением ...
...
Рейтинг: 0 / 0
MVC - Почему в jQuery "submit" это не совсем "submit"?
    #39675126
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValGerPetro123пропущено...
ниче не понял.
Зачем на линк перехода прикручивать сабмит?

Это другой вопрос, а по существу что-нибудь можете сказать?
С уважением ...

По существу - ты вручную код обфусцируешь?

Сколько запросов отправляется на веб-сервер при нажатии на кнопку "Сохранить"?
Что они возвращают?
Посмотри в отладчике браузера.
...
Рейтинг: 0 / 0
MVC - Почему в jQuery "submit" это не совсем "submit"?
    #39675127
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValGerЭто другой вопрос,нет.
На дурацкие вопросы голова не работает.
Представь, что на sql.ru при клике на ссылку перехода пойдет POST сохранить на сервер?
Удачи!
...
Рейтинг: 0 / 0
MVC - Почему в jQuery "submit" это не совсем "submit"?
    #39675168
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123POST сохранить на сервер
POST к "сохранить на сервер" имеет косвенное отношение.
...
Рейтинг: 0 / 0
MVC - Почему в jQuery "submit" это не совсем "submit"?
    #39675198
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Агнец за бортомPetro123POST сохранить на сервер
POST к "сохранить на сервер" имеет косвенное отношение.
А какое прямое?
Get?
Я понимаю, что можно отправить форму на сервер на сохранение, а там плюнуть на это.
Но мы же про логику не отмороженную.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / MVC - Почему в jQuery "submit" это не совсем "submit"?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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