Ajax.BeginForm OnSuccess не выполняется после отправки - PullRequest
0 голосов
/ 29 апреля 2011

Я пытаюсь использовать диалоговое окно jquery для редактирования данных в WebGrid. Все работает нормально до тех пор, пока форма не будет отправлена, вместо того, чтобы вернуться на текущую открытую страницу, браузер перейдет по ссылке действия контроллера. Я использую HTML.ActionLink в WebGrid, который добавляет поведение jquery к кнопке WebGrid, и это прекрасно работает. Он открывает вид в диалоговом окне jquery. Диалог определяет две кнопки: кнопку обновления и кнопку отмены. Нажатие на кнопку отмены ничего не делает. Нажатие кнопки обновления приводит браузер к URL-адресу контроллера для действия редактирования с идентификатором элемента. У меня определена библиотека jquery.unobtrusive-ajax.js, и я добавил ключ UnobtrusiveJavaScriptEnabled в файл Web.config, хотя я не уверен, что это необходимо. Кто-нибудь сталкивался с таким поведением, любая помощь оценена!

Ответы [ 2 ]

0 голосов
/ 29 апреля 2011

Когда у меня возникла эта проблема, я не обращался к библиотеке jquery-Ajax.unobtrusive, поэтому убедитесь, что она тоже есть

Из моей записи в http://completedevelopment.blogspot.com/2011/02/unobstrusive-javascript-in-mvc-3-helps.html

1. Set the mentioned flag in the web.config: <add key="UnobtrusiveJavaScriptEnabled" value="true"/>
2. Include a reference to the jQuery library ~/Scripts/jquery-1.4.4.js
3. Include a reference to the library that hooks this magic at ~/Scripts/jquery.unobtrusive-ajax.js
0 голосов
/ 29 апреля 2011

Я сталкивался с этой проблемой в двух ситуациях:

  1. Обработчик событий не был привязан к событию отправки формы или не подавлял поведение по умолчанию (через event.preventDefault(); или return false;).
  2. Произошла ошибка в обработчике событий, из-за чего он вернулся к поведению по умолчанию.

Ну, вот как я могу помочь безисточник.

...