| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: для новичков > Проблема с формой и аяксом |
| Автор: NNaarreekk 4.11.2009, 14:36 | ||||
| хочу отправлять данные через аякс, но так чтоб это было при онсубмит. Возникла такая проблема, что при онсубмит страница переходит к ссылке в action='' дело примерно так:
и js:
Как сделать так чтоб скрипт не передавал POST-ом? Код без ошибок, так что это не связанно с тем что сайт не доходит до return false; из за ошибки. Спасибо за помощь! |
| Автор: youri 5.11.2009, 00:18 |
| функция function(result, errors) вызывается по завершению ajax-запроса и return false там смысла не имеет. Потому что она не может ничего вернуть от имени функции getResults, даже если бы вызывалась до завершения getResults. А getResults завершается сразу после отправки запроса |
| Автор: NNaarreekk 5.11.2009, 14:07 |
| youri, я экспериментировал и забыл потом удалить. Сейчас сделал по другому, просто ловлю нажатие ввода, для отправки данных и получается эффект формы. Но это не решение этой проблемы. Т.е. если я напишу ретурн фолс после отправки то до этой строки не дойдет, а если до запроса то запрос не сработает. Я правильно понял? Прям патовая ситуация! |
| Автор: youri 5.11.2009, 16:12 |
| что у тебя происходит: вызывается getResults, она отправляет запрос и завершается. Т.е. фактически должна начаться отправка формы. Когда браузер получает ответ, вызывается function(result, errors), которая возвращает false фактически в никуда (или по-крайней мере не туда, куда нужно). Причем может браузер и не дожидается ответа, потому что началась отправка формы |
| Автор: NLspieler 5.11.2009, 20:32 | ||
Самое, простое, что можно предложить. |
| Автор: NNaarreekk 6.11.2009, 13:33 | ||||
Да, я тоже думал что так сработает, но не получилось. Так даже не работает если не посылать запрос аяксом а просто алертом что-нить показать. Работает только когда делаешь
а в foo:
При ссылках нормально работает обычный ретурн фолс, а в формах как-то глючит(( |
| Автор: youri 6.11.2009, 14:50 | ||
невозможно, приведи html-код тестовой странички с alert'ом, который неработает |
| Автор: NNaarreekk 6.11.2009, 16:31 |
Закон подлости! Я испробовал все варианты начиная с и никак не получалось. Теперь когда нужно показать пример все работает. Самое странное что я этот метод писал не раз и все время не работало! Проблема решена! youri, NLspieler, спасибо за помощь! |