Safari Chrome форма без каких-либо действий не работает - PullRequest
0 голосов
/ 06 декабря 2010

Я создаю приложение, используя Django и jQuery.В некоторых формах в HTML я делаю AJAX-вызовы, используя только jQuery, поэтому я помещаю форму с action = "#" method = "" и получаю.

Когда я нажимаю кнопку отправки в FF, она работает нормально, ничего не перезагружается и выполняется вызов ajax.Однако в Chrome и Safari страница загружается и повторно запрашивается с сервера.

Есть какие-нибудь подсказки?

Ответы [ 2 ]

0 голосов
/ 04 февраля 2011

В максимально возможной степени Webkit и Opera стараются следовать черновому варианту HTML5. В настоящее время в разделе отправки формы говорится, что действия, начинающиеся с HTTP (S), даже если action="#" или action="", вызовут переход, который должен вызвать загрузку новой страницы при новом GET. параметры добавлены. Если вы хотите предотвратить перезагрузку страницы, вам нужно добавить обработчик отправки, который предотвращает действие по умолчанию, возвращая false или говоря e.preventDefault().

0 голосов
/ 06 декабря 2010

Что произойдет, если пропустить действие и метод?В любом случае вам это не нужно, если вы отправляете вызов ajax.

...