Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Для работы с формами (Html.BeginForm) в MVC предлагается следующая схема: 1. [GET] ActionResult Add/Edit — отдать форму клиенту 2. [POST] ActionResult Add/Edit — получить данные от клиента и.. 2.1. В случае ошибки валидации отдать форму на повторное редактирование (показать ошибки, например, в ValidationSummary) 2.2. Если все ок, выполнить редирект, допустим, на Details Что касается Ajax форм (Ajax.BeginForm), все действия выполняются аналогично, только контроллер отдаёт PartialViews, и в 2.2. надо не выполнить редирект, а передать Json с результатом. Не нашёл как 2.2. релизовать для Ajax по фен-шую. Генерить PartialView в поле Json это совсем-совсем нехорошо. Пока наиболее кошерный вариант, передавать статус результата в кастомном HTTP заголовке (например, X-Form-Status), в зависимости от которого клиент рендерит HTML форму заново в контейнере (с ошибками валидации), или обрабатывает данные как Json с нужной логикой. Что скажете? Есть еще варианты? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 15:36 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Зачем тебе вся эта гавнологика и чем не устроил классический вариант Html.BeginForm? Или просто для самообразования? hVosttЧто касается Ajax форм (Ajax.BeginForm), все действия выполняются аналогично, только контроллер отдаёт PartialViews А в Html.BeginForm запрещено работать с частичными представлениями? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 16:41 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, Html.BeginForm это постбек, а Ajax.BeginForm это AJAX, разница существенная. Например, это может быть форма редактирования в гриде Master-Detail, нафига загружать форму редактирования в отдельной странице, если можно здесь же в модальном окошке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 17:36 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttМСУ, Html.BeginForm это постбек О как! Откуда постбэки в ASP.NET MVC, друг? Ничего не путаешь? hVosttа Ajax.BeginForm это AJAX, разница существенная. Кто-то запрещает при Html.BeginForm использовать $.post / $.ajax? hVosttНапример, это может быть форма редактирования в гриде Master-Detail, нафига загружать форму редактирования в отдельной странице, если можно здесь же в модальном окошке. Я понимаю, изучение MVC тебе дается тяжело. Но зачем фантазировать тут, выдавая свой мусор из мыслей за чистую монету? Ведь проще спросить, когда чего-то не знаешь. Фантазировать не надо. Вот тебе рецепт: http://codearticles.ru/articles/2256 Используется Html.BeginForm, поднимается форма, которая хостится в PartialView, как ты хотел. Загружается это добро на лету по факту, через $('<div />').load(). Чем тебе не аякс? :) P.S. Про постбэк поржал. Это пять! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 17:44 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, Кастомные поделки меня сейчас совершенно не интересуют. Если нечего сказать именно про Ajax.BeginHtml, то лучше не надо. Кроме того в твоем решении, совершенно не обрабатывается ситуация в приведенном мною алгоритме под пунктом 2.1, ты просто тупо закрываешь форму после сабмита $(this).dialog("close"); этого делать не стоит, если валидация на сервере не прошла. в общем, не в кассу совершенно, ни комментарии, ни рецепт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 17:48 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
[hVostt]МСУ, Кастомные поделки меня сейчас совершенно не интересуют. Если нечего сказать именно про Ajax.BeginHtml, то лучше не надо[/quot $.post это кастомная поделка? Ты в своем уме? [hVostt] Кроме того в твоем решении, совершенно не обрабатывается ситуация в приведенном мною алгоритме под пунктом 2.1, ты просто тупо закрываешь форму после сабмита $(this).dialog("close"); этого делать не стоит, если валидация на сервере не прошла. в общем, не в кассу совершенно, ни комментарии, ни рецепт.[/quot] Садись, два. Этот пункт выполняется. Ты каким местом код читаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 18:30 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttМСУ, Кастомные поделки меня сейчас совершенно не интересуют. Если нечего сказать именно про Ajax.BeginHtml, то лучше не надо $.post это кастомная поделка? Ты в своем уме? hVosttКроме того в твоем решении, совершенно не обрабатывается ситуация в приведенном мною алгоритме под пунктом 2.1, ты просто тупо закрываешь форму после сабмита $(this).dialog("close"); этого делать не стоит, если валидация на сервере не прошла. в общем, не в кассу совершенно, ни комментарии, ни рецепт. Садись, два. Этот пункт выполняется. Ты каким местом код читаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 18:32 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttДля работы с формами (Html.BeginForm) в MVC предлагается следующая схема: 1. [GET] ActionResult Add/Edit — отдать форму клиенту 2. [POST] ActionResult Add/Edit — получить данные от клиента и.. 2.1. В случае ошибки валидации отдать форму на повторное редактирование (показать ошибки, например, в ValidationSummary) 2.2. Если все ок, выполнить редирект, допустим, на Details Что касается Ajax форм (Ajax.BeginForm), все действия выполняются аналогично, только контроллер отдаёт PartialViews, и в 2.2. надо не выполнить редирект, а передать Json с результатом. Не нашёл как 2.2. релизовать для Ajax по фен-шую. Генерить PartialView в поле Json это совсем-совсем нехорошо. Пока наиболее кошерный вариант, передавать статус результата в кастомном HTTP заголовке (например, X-Form-Status), в зависимости от которого клиент рендерит HTML форму заново в контейнере (с ошибками валидации), или обрабатывает данные как Json с нужной логикой. Что скажете? Есть еще варианты? У Ajax.BeginForm есть OnSuccess - передаешь туда название javascript функции а в ней все что душе угодно Код: html 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 18:36 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, МСУ$.post это кастомная поделка? Ты в своем уме? Еще раз говорю, меня интересует решение на Ajax.BeginForm, а не твоя кастомная поделка на $.post — это именно кастомная поделка. при чем довольно кривая, поэтому обсуждать её не будем, я не спрашивал как вообще сделать AJAX, нужно решение на Ajax.BeginForm МСУСадись, два. Этот пункт выполняется. Ты каким местом код читаешь? хоть каким местом этот код не читай, проверка валидации на сервере у тебя не выполняется. твой серверный POST метод возвращает Json(true) Код: c# 1. 2. 3. 4. 5. за что отлупить бы линейкой такого кодера, да по рукам :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 18:52 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
evgen12345, я про этот onsuccess и говорю. он выполняется при любом ответе сервера с кодом 200. но там может быть либо невалидная форма, либо сообщение об успехе. вопрос в том, как в методе onsuccess отделить одно от другого лучше всего чтож все такие грамотные, чуть ли шатлы в космос не запускают на шарепоинт и динамикс под бдительным пассивным руководством майкрософ, а в такой задачке теряются... видимо сверхумище даёт в голову нехило и мешает думать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 18:54 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttЕще раз говорю, меня интересует решение на Ajax.BeginForm Ты дурачком долго будешь прикидываться? Мне фиолетово, что тебя интересует. Я поправил твои неверные высказывания и спросил, почему не устраивает Html.BeginForm. Ты начал дальше нести какой-то бред про постбэки и аякс. Далее, ты сказал, что мой код не работает с валидацией, я снова тебя ткнул носом в тот факт, что ты не прав. А теперь ты начинаешь съезжать с темы, мол тебя ничего это ни интересует. Если начал дискуссию на обе темы, значит держи речь до конца, не увиливай и не съезжай с темы. hVostt$.post — это именно кастомная поделка. при чем довольно кривая, поэтому обсуждать её не будем Вот ты опять мелечшь языком и сразу же соскакиваешь. Готов аргументировать свой ответ, почему $.post - кривая поделка? hVosttМСУСадись, два. Этот пункт выполняется. Ты каким местом код читаешь? хоть каким местом этот код не читай, проверка валидации на сервере у тебя не выполняется. твой серверный POST метод возвращает Json(true) Во-первых, валидация происходит на клиенте, букварь в руки и изучай, что такое $("form").validate().form(). Во-вторых, кто тебе мешает на сервере валидировать? Тебя держат за руки и запрещают это делать? Итого, ты ляпнул: hVosttты просто тупо закрываешь форму после сабмита $(this).dialog("close"); Теперь ты осознал, что это не так? Еще раз, чтобы потом не было стыдно и чтобы потом не извинялся за своё гонево - валидация там есть. Точка. hVostt Код: c# 1. 2. 3. 4. 5. что отлупить бы линейкой такого кодера, да по рукам :) См. выше, я уже всё написал по этому поводу. То, что ты безудержно пытаешься хоть за что-то зацепиться, чтобы окончательно не утонуть. Для танкистов еще раз повторю, суть рецепта - показать, как работают диалоги в mvc, а не о том, нужно ли валидировать что-то на сервере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:02 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, много слов и как обычно не по делу. клиентская валидация это хорошо, но не панация. кто у нас недавно тут чесал языком о том, что браузеро пользователя нельзя доверять? ты мне покажешь как вернуть форму на повторное редактирование через Ajax если форма не прошла валидацию на сервере ? или дальше будешь великого умника строить из себя??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:12 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, Для танкистов еще раз повторю, суть рецепта - показать, как работают диалоги в mvc, а не о том, нужно ли валидировать что-то на сервере. дубина ты. мне плевать на твои деалоги. если хотел показать какой ты грамотный и умеешь делать диалоги, то молодец, умеешь же, могёшь! возьми вон плюшко со стола, если дотянешься. если тебе на заданный вопрос плевать и те лишь бы чо нить сунуть своё не в попад, то ради бога блин. преждупреждай, что ты не отвечаешь на заданный вопрос, а так мелешь отсебятину, не имеющую к топику отношения. буду подписывать твои комменты вот таким перлом: ОХ НУ И МОЛОДЕЦ ЖЕ ТЫ МСУ! и буду обсуждать тему с адекватными людьми. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:16 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttevgen12345, я про этот onsuccess и говорю. он выполняется при любом ответе сервера с кодом 200. но там может быть либо невалидная форма, либо сообщение об успехе. вопрос в том, как в методе onsuccess отделить одно от другого лучше всего чтож все такие грамотные, чуть ли шатлы в космос не запускают на шарепоинт и динамикс под бдительным пассивным руководством майкрософ, а в такой задачке теряются... видимо сверхумище даёт в голову нехило и мешает думать. Я не совсем понимаю что именно нужно - вот мой пример, который я мучил пару дней назад - тынц Посмотри на него и напиши какое тебе нужно поведение - может смогу помочь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:18 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
evgen12345, я сделал Изменить, получил через Ajax форму. прописал в поле Стоимость продукта, билеберду вместо цифр. форма ушла без вопросов что-то там засабмитилось. некатит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:20 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttМСУ, много слов и как обычно не по делу. Я тебе по делу уже всё сказал и показал. Теперь я пытаюсь выбить из тебя остальную дурь по поводу постбэков и валидации. hVosttклиентская валидация это хорошо, но не панация. кто у нас недавно тут чесал языком о том, что браузеро пользователя нельзя доверять? Ты идиотом долго будешь прикидываться? Суть рецепта не в том, чтобы научить валидировать на сервере. Поэтому приводится фейковый return Json(true). Если ты до сих пор этого не можешь понять, то бросай программировать, иди паси коров. hVosttты мне покажешь как вернуть форму на повторное редактирование через Ajax если форма не прошла валидацию на сервере ? или дальше будешь великого умника строить из себя??? Вот тут есть рецепт, который показывает, что нужно сделать на сервере для клиента для отработки клиентской валидации: http://codearticles.ru/articles/2291 hVosttдубина ты. мне плевать на твои деалоги. если хотел показать какой ты грамотный и умеешь делать диалоги, то молодец, умеешь же, могёшь! возьми вон плюшко со стола, если дотянешься. Дубину ты видишь в зеркале, двоешник. Иди постбэки пиши для mvc hVosttесли тебе на заданный вопрос плевать и те лишь бы чо нить сунуть своё не в попад, то ради бога блин. Десятый раз повторяю, умей задавай вопросы. А так получается, ты задаешь вопрос и тут же пишешь бред сивой кобылы. Собственно, я тебе и объясняю, что ты пишешь бред. Но ты сопротивляешься и еще больше начинаешь жечь. Это нормально? hVosttпреждупреждай, что ты не отвечаешь на заданный вопрос, а так мелешь отсебятину, не имеющую к топику отношения. буду подписывать твои комменты вот таким перлом: ОХ НУ И МОЛОДЕЦ ЖЕ ТЫ МСУ! и буду обсуждать тему с адекватными людьми. Я тебе уже дал все ответы. Только идиот вроде тебя не видит ответы, продолжает спорить и писать глупости. Акстись уже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:25 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
поведение нужно следующее: на странице есть такой <div id="ajaxForma"></div> и Ajax.ActionLink, который при нажатии рендерит в этот див форму у формы есть OnSuccess, который должен сделать следующее: 1. если форма не прошла валидацию на сервере отрендерить пришедшую форму еще раз в диве 2. если форма прошла валидацию на сервере , в ответе прочитать из Json нужные данные (допустим присвоенный Id и Name) ну и для примера вывести это дело под дивом (или в диве, не важно...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:25 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, харе тупить. ты задачу не понял. или понял, но какую-то совсем другую, возможно это я виноват — не так объясняю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:30 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, а да, расскажи как нам что такое постбеки на самом деле? можешь дать линку истины в первой инстанции и почему это не применимо к ASP.NET MVC? я тоже хочу знать! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:32 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttМСУ, харе тупить. ты задачу не понял. или понял, но какую-то совсем другую, возможно это я виноват — не так объясняю. То, что ты не умеешь объяснять - не для кого не секрет. Вот и evgen12345 тебя нихрена не понимает. Я тебе показал, как решить задачу с помощью Html.BeginForm без каких-либо телодвижений. Ты начал херню какую-то писать. Ну что ты за человек? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:32 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttМСУ, а да, расскажи как нам что такое постбеки на самом деле? можешь дать линку истины в первой инстанции и почему это не применимо к ASP.NET MVC? я тоже хочу знать! :) Открой для себя гугл. Мне порядком поднадоело учить талпайопа, который ничего не хочет понимать, спорит и пишет феерический бред. Из гугла ты узнаешь, что в ASP.NET MVC нет постбэков. Это для WinForms. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:34 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУЭто для WinForms. WebForms ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:34 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, ну твои примеры не решают задачу. забудь про клиенсткую валидацию. мы отправляем форму пусть хрен с тобой через $.post. в ответе либо форма на повторное редактирование (т.е. кусок html, который надо отрендерить за место старой формы), либо Json с новым айдишником допустим, не важно. что тут непонятного? Ajax.BeginForm эту задачу не решает, для него OnSuccess это любой ответ с кодом 200 — даже невалидная форма. что в принципе логично, но что делать коду, расположенному в OnSuccess? как ему понять что пришло? форма на повторное редактирование или успех? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:37 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVostt, Ок, сегодня вечером гляну, сейчас в кино убегаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:38 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУWebForms http://en.wikipedia.org/wiki/Postback ничего про вебформс не сказано. ни слова. ааааа, самому надо додумывать! эт ж по-твоему логично? )))))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:39 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
авторIn the context of web development, a postback is an HTTP POST to the same page that the form is on. вот и верь после этого человеку..... ((( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:40 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttМСУ, ну твои примеры не решают задачу. забудь про клиенсткую валидацию. мы отправляем форму пусть хрен с тобой через $.post. в ответе либо форма на повторное редактирование (т.е. кусок html, который надо отрендерить за место старой формы), либо Json с новым айдишником допустим, не важно. что тут непонятного? Ты совсем умом тронулся? Тебе через $.post отдается через PartialView нужный кусок html, делай с ним, что хочешь. Хоть повторное редактирование, хоть десятое редактирование. А в JsonResult возвращай хоть айдишники, хоть хрена лысого. Пипец, почему же ты такой тупой... hVosttAjax.BeginForm эту задачу не решает, для него OnSuccess это любой ответ с кодом 200 — даже невалидная форма. что в принципе логично, но что делать коду, расположенному в OnSuccess? как ему понять что пришло? форма на повторное редактирование или успех? Убей себя об стену. Когда поймешь, о чем я говорю, тогда и спасибо скажешь. А пока тупи дальше. hVosttМСУWebForms http://en.wikipedia.org/wiki/Postback ничего про вебформс не сказано. ни слова. ааааа, самому надо додумывать! эт ж по-твоему логично? )))))) http://weblogs.asp.net/fredriknormen/archive/2007/11/14/asp-net-mvc-framework-an-early-look.aspx The MVC Framework doesn’t support postbacks. P.S. Вообщем, отдыхай, неуч. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 19:56 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Comparing Web Forms And ASP.NET MVC, Dino Esposito Benefits of ASP.NET MVCNo postbacks are ever required to service a user request. No viewstate is ever required to persist the state of the page. No arraysof black-box server controls exist to produce the HTML for the browser. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 20:01 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, К Википедии как-то больше доверия. А она ничего про веб-формс не говорит, накидал ссылки на блоги каких-то ребят и рад стараться. А если ты задачу не понял, отдыхай. Я уже разжувал как мог. Не понимаешь, и хрен с тобой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 21:31 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttМСУ, К Википедии как-то больше доверия. А она ничего про веб-формс не говорит, накидал ссылки на блоги каких-то ребят и рад стараться. Отлично, я ему про великого гуру кладоискателя Дино Эспозито, а у него к гавнопедии больше доверия. Поставь себе клеймо "Йа талпайоп" на лоб, будт другом. hVosttА если ты задачу не понял, отдыхай. Я уже разжувал как мог. Не понимаешь, и хрен с тобой. Я тебе расписал уже всё, что можно. И даже более чем. Но у тебя клинический случай. Воообще грызи гранит, глядишь через недельку напишешь что-то вроде этого 14281289 . Бывай, двоешник. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 21:39 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, «Великий гуру Экспозито» ахаааахахааа.а..... ну и уууууммора ))))) пока своей головой не научишься думать, вперед всех авторитетов, гроша ломанного твои слова не стоят. только пруфами и прикрываешься, да всякими гуру-авторитетами, а сам за себя и от себя ни слова сказать не можешь. соболезную, чо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 22:28 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVostt, а если учесть кто такой Экспозито и для какого уровня свои книжонки пишет, то вообще баста. нашел блин себе авторитета. кладоискателя. ппц... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 22:31 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVostt1. если форма не прошла валидацию на сервере отрендерить пришедшую форму еще раз в диве Зачем постоянно рендерить форму которая уже на клинте? После клиентской валидации, вполне достаточно получить от сервера JSON со статусом и ошибкой. hVostt2. если форма прошла валидацию на сервере , в ответе прочитать из Json нужные данные (допустим присвоенный Id и Name) ну и для примера вывести это дело под дивом (или в диве, не важно...) Если перестать фанатеть к стандартным шаблонам из букваря, которые полюбому не покроют весь функционал, то очень просто и гибко все разруливается на JS. Принять там к примеру такой результ { isValid: 'true', errorMsg: 'Invalid input', id: '123' } зы или я тоже не понял ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 22:38 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttМСУ, «Великий гуру Экспозито» ахаааахахааа.а..... ну и уууууммора ))))) Ага, такая же умора, как ламеры из майкрософта, которые пишут спецификации и рекомендации, о которых ты вчера вбрасывал. На одной чаше весов они вместе с Экспозито, на другой чаше - ты такой опытный и чудесный с постбэками в mvc. Кому верить? hVosttпока своей головой не научишься думать, вперед всех авторитетов, гроша ломанного твои слова не стоят. Пока своей головой не научишься читать, что тебе пишут, ты будешь тем же унылым гавнокодером без какого-либо практического опыта за плечами. hVosttтолько пруфами и прикрываешься, да всякими гуру-авторитетами, а сам за себя и от себя ни слова сказать не можешь. соболезную, чо. Пруфы - это аргументы и доказательства правоты. Без них ты гавно на лопате. Кем пока и являешься, прости. hVosttа если учесть кто такой Экспозито и для какого уровня свои книжонки пишет, то вообще баста. нашел блин себе авторитета. кладоискателя. ппц... ... сказал авторитетнейший hVostt с кладезем знаний в багаже. Ты попробуй сначала напиши не то, что книжонку, а, хотя бы, статейку. А потом мы поговорим с тобой про авторитет и знания. Пока ты ниже плинтуса, хвост. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 22:43 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Парамонили я тоже не понял ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 22:46 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVostt, что то я не понял это что из области хака что ли? авторвернуть форму на повторное редактирование через Ajax если форма не прошла валидацию на сервере? на кой форму то возвращать? если она уже есть на клиенте, надо просто подсветить не верные поля ввода. возвращаем список не верных полей если проверка вводимых значений исполнена партикулярно as mvc просто находим все спаны с атрибутом data-valmsg-for= поле с ошибкой и убираем с них display none и все...... выходит подсветка не прально введенное поле, стандартный механизм, если клиентской проверки в помине нет а охота пыль пустить, находим контейнер где лежит поле с непральным вводом и подкрашиваем его, можно с сервера притащить расшифровку кода ошибок, это ж все рутина хотя и стандартная ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 23:09 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Где-то в степичто то я не понял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 23:16 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
hVosttМСУ, К Википедии как-то больше доверия. А она ничего про веб-формс не говорит, накидал ссылки на блоги каких-то ребят и рад стараться. А если ты задачу не понял, отдыхай. Я уже разжувал как мог. Не понимаешь, и хрен с тобой. Как то не красиво так себя вести. А по поводу доверия к википедии - то тут вы сильно заблуждаетесь. кто пишет в википедию? Да не понятно кто - так же не понятно кто потом это валидирует - насколько квалифицированный человек. В википедию писать вообще любой может - хотите добавьте статью на эту тему (постбэки) сами - для рунета на Русском языке. А Дино Эспозито как миниму человек более 10 лет занимающийся технологиями Microsoft. И кстате писал в MSDN Magazine. Помню его отличную книгу ASP.NET 2.0 Задача-Проект-Решение - отличная книга, я бы сказал лучшая. Ну и вам как почитателю википедии собственно пруф линк - Dino Esposito ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 23:19 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ, я вот не пойму а чем стандартный механизм разора не угодил, если поля рендерятся разором с не валидными значениями на базе атрибутов, разор автоматом включает подсветку не верных полей? или я ошибаюсь, я давно уже пользуюсь кастомным механизмом проверки https://github.com/ionson100/Edition ( кое где кривовато но на админку тянет) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 23:23 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Где-то в степиhVostt, что то я не понял это что из области хака что ли? авторвернуть форму на повторное редактирование через Ajax если форма не прошла валидацию на сервере? на кой форму то возвращать? если она уже есть на клиенте, надо просто подсветить не верные поля ввода. возвращаем список не верных полей если проверка вводимых значений исполнена партикулярно as mvc просто находим все спаны с атрибутом data-valmsg-for= поле с ошибкой и убираем с них display none и все...... выходит подсветка не прально введенное поле, стандартный механизм, если клиентской проверки в помине нет а охота пыль пустить, находим контейнер где лежит поле с непральным вводом и подкрашиваем его, можно с сервера притащить расшифровку кода ошибок, это ж все рутина хотя и стандартная Так стандартный JQuery.Validate работает на ура. У меня в примере работает криво так как я там мутил одну тему и пока не до мутил. Но в целом работает попробуйте при редактировании стереть все поля или в поле сумма написать число с запятой форма не будет отправленна. Если есть ошибка на сервере то возвращаем ответ - что то типа следующего: Код: 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. Тогда ответ с кодом 200 не вернется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 23:28 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
авторAjax.BeginForm эту задачу не решает, для него OnSuccess это любой ответ с кодом 200 в случае ошибки, обычно, возвращают код 403 - как бэ нормальная практика!!! http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html - можешь найти что нибудь подходящее из из 40... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 23:30 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Где-то в степиМСУ, я вот не пойму а чем стандартный механизм разора не угодил, если поля рендерятся разором с не валидными значениями на базе атрибутов, разор автоматом включает подсветку не верных полей? или я ошибаюсь, я давно уже пользуюсь кастомным механизмом проверки https://github.com/ionson100/Edition ( кое где кривовато но на админку тянет) Дак я ж ему и дал стандартый вариант: http://codearticles.ru/articles/2256 Бери да юзай, родная валидация, родная модель, родной $.post. Что еще надо, не понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 23:30 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Где-то в степиМСУ, я вот не пойму а чем стандартный механизм разора не угодил, если поля рендерятся разором с не валидными значениями на базе атрибутов, разор автоматом включает подсветку не верных полей? или я ошибаюсь, я давно уже пользуюсь кастомным механизмом проверки https://github.com/ionson100/Edition ( кое где кривовато но на админку тянет) Разор не подсвечивает - подсвечивает JQuery.Validator Во что генерит разор для поля которое должно быть заполнено: Код: html 1. 2. 3. 4. 5. 6. 7. Если поле не заполнить - сработает скрипт и получим: Код: html 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 23:44 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Где-то в степи, А если валидация не прошла на сервере - то еще будут отображенны скрытые подсказки - вот кто как их гененрит не подскажу, но думаю что разумнее и отображать скрывать по скрипту так как передается глобально значение IsValid ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2013, 23:47 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
evgen12345,авторРазор не подсвечивает - подсвечивает JQuery.Validator Отключи скрипт в браузере и посмотри, придёт ли форма с подсказками на не правильные значения.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2013, 00:06 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
$.validator подсвечивает только для unobtrusive validation. razor тоже может светить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2013, 00:13 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУ,авторrazor тоже может светить. ну вот я о том же не у всех де js включен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2013, 00:19 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Где-то в степину вот я о том же не у всех де js включен Да, выставляем ClientValidationEnabled="true" и UnobtrusiveJavaScriptEnabled="true" в конфиге, тогда при включенном js будет сначала $.validator отрабатывать, а потом уже razor. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2013, 00:25 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
МСУПруфы - это аргументы и доказательства правоты. Уволен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2013, 02:57 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
evgen12345А если ты задачу не понял, отдыхай. Я уже разжувал как мог. Не понимаешь, и хрен с тобой. Как то не красиво так себя вести. А по поводу доверия к википедии - то тут вы сильно заблуждаетесь. кто пишет в википедию? Да не понятно кто - так же не понятно кто потом это валидирует - насколько квалифицированный человек. В википедию писать вообще любой может - хотите добавьте статью на эту тему (постбэки) сами - для рунета на Русском языке. А Дино Эспозито как миниму человек более 10 лет занимающийся технологиями Microsoft. И кстате писал в MSDN Magazine. Помню его отличную книгу ASP.NET 2.0 Задача-Проект-Решение - отличная книга, я бы сказал лучшая. Ну и вам как почитателю википедии собственно пруф линк - Dino Esposito [/quot] Что-то я вас товарищи совсем не понимаю. Человек просил пруф, я ему дал пруф на википедию. На чито мне было в грубой форме донесено, что такой пруф я должен запхать куда подальше, ибо какой-то гений Экспозито говорит совершенно другое... И что теперь? Я должен как олень искать пруфы среди банды авторитетов, сугобо которых придерживается МСУ. Для начало этот кадр хотябы огласил б свой личный список из этой банды, которым он слепо верит. Ибо мозгов ему своих кажется не выдали при компиляции. Т.е. мы банальна должны мериться авторитето-письками в своих аргументах, так? «А вот мой папа с черным поясом по карате, тракторист 80 левела, вот придет и твоему каааа-к даст!» К Дино Экспозито претензий не имею. Он-то молодец. А вот некоторые, которые в укор мне ставят, что я ни одной книги не написал, так пусть покажет хотяб одну свою. Да хоть драную статейку, прежде чем выпендриваться. За чужие спины, я смотрю, прятаться мы хорошо научились. Постбек в контексте вебформс это конкретная технология про которую пишет Экспозито. В контексте веб это «a postback is an HTTP POST to the same page that the form is on» и не надо тут ничего выдумывать, выдерать слова из контекста и ржать над ними аки конь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2013, 03:13 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
Решение: ======= в контроллере перед return Response.AddHeader("X-Form-Status", "Ok"); // если все ок и Response.AddHeader("X-Form-Status", "Error"); // форму на повторное редактирование в скрипте OnSuccess(data, status, xhr): ... if(xhr.getResponseHeader('X-Form-Status') == "Ok") { // делаем с data что требуется } else { $('#formContainer').html(data); // снова рендерим форму в data (с ValidationSummary и т.п.) } ... преимещества: в data может быть что угодно, хоть Json, хоть Html, при может различаться для разных X-Form-Status. логика доставки четко разделена, в data — только требуемые данные, в заголовке HTTP — статус обработки, т.е. данные не надо лепить из разнородных по назначению элементов и приделывать корявый костыль вида isValid виноват, надо было сразу пример привести. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2013, 03:45 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
ерунда... вставив свой хидер ты по сути повторил то, что уже есть в заголовках - statusCode !!! отдай 403 в случае ошибки и, проверяй не в OnSuccess а в OnError!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2013, 10:14 |
|
||
|
[ASP.NET MVC 4] Аналог Http.BeginForm() GET->POST->Redirect для Ajax.BeginForm
|
|||
|---|---|---|---|
|
#18+
http://stackoverflow.com/questions/6456265/how-to-return-correct-response-on-error-in-asp-net-mvc-3-0-via-json вот же пример нормальный - и таких тьма тьмущая в нете... https://www.google.ru/search?q=mvc ajax.beginform onerror&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2013, 11:29 |
|
||
|
|

start [/forum/topic.php?all=1&fid=18&tid=1358453]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
83ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
106ms |
get tp. blocked users: |
2ms |
| others: | 250ms |
| total: | 497ms |

| 0 / 0 |
