|
15 / 14 / 9
Регистрация: 16.04.2012
Сообщений: 1,091
|
||||||||||||||||
Как отправить форму, не перезагружая страницу?25.12.2015, 20:19. Показов 1519. Ответов 14
Метки нет (Все метки)
Собственно сабж. Раньше у меня получалось это сделать с помощью XHR. Теперь, как я понял, что-то где-то поменялось, и ничего у меня не работает. Вот функция:
Нагуглил, что можно реализовать задуманное при помощи Ajax. Вот функция номер два:
Страница test.php лежит в корневом каталоге сайта, и выглядит следующим образом:
0
|
||||||||||||||||
| 25.12.2015, 20:19 | |
|
Ответы с готовыми решениями:
14
Как отправить форму с html страницы на страницу которая формируется бинарным кодом? Как можно записать данные в сессию не перезагружая страницу? |
|
15 / 14 / 9
Регистрация: 16.04.2012
Сообщений: 1,091
|
|
| 26.12.2015, 17:43 [ТС] | |
|
А что насчёт xhr? И бывают ли ещё какие-нибудь варианты?
0
|
|
|
Все элементарное - сложно
133 / 118 / 50
Регистрация: 14.04.2014
Сообщений: 509
|
|
| 27.12.2015, 01:22 | |
|
Ну XHR и есть объект реализующий технологию AJAX. Других вариантов я не припомню
0
|
|
|
15 / 14 / 9
Регистрация: 16.04.2012
Сообщений: 1,091
|
||
| 30.12.2015, 16:33 [ТС] | ||
|
С jQuery вариантом я разобрался, он у меня заработал. Но у него есть огромный минус: там callback функция. Это очень плохой для меня вариант. Поэтому хочется разобраться с XHR
0
|
||
|
Все элементарное - сложно
133 / 118 / 50
Регистрация: 14.04.2014
Сообщений: 509
|
||
| 30.12.2015, 16:51 | ||
|
0
|
||
|
15 / 14 / 9
Регистрация: 16.04.2012
Сообщений: 1,091
|
|||||||
| 30.12.2015, 17:09 [ТС] | |||||||
|
Добавлено через 2 минуты
0
|
|||||||
|
Все элементарное - сложно
133 / 118 / 50
Регистрация: 14.04.2014
Сообщений: 509
|
||||||
| 30.12.2015, 17:28 | ||||||
|
Про промисы можно почитать здесь.
Ваш же код отправляет запрос (синхронный запрос) и не работает дальше, пока не получит ответ. Что не есть хорошо, т.к. страница подвисает и пользователь ничего не может сделать, пока ждет ответа. Т.е. нужно использовать асинхронный запрос так:
$.ajax() в jQuery всего лишь обертка над объектом XHR
0
|
||||||
|
15 / 14 / 9
Регистрация: 16.04.2012
Сообщений: 1,091
|
||||||||||||||||
| 30.12.2015, 20:57 [ТС] | ||||||||||||||||
|
mixenik, ничего я не понял про эти промисы. У меня с ними функция ведёт себя точно так же, как и без них было: сначала возвращает пустой ответ, а потом уже получает от сервера то, что надо было вернуть.
![]() ![]() Добавлено через 6 минут То же самое и с этим вариантом:
0
|
||||||||||||||||
|
Все элементарное - сложно
133 / 118 / 50
Регистрация: 14.04.2014
Сообщений: 509
|
|||||||||||
| 30.12.2015, 22:15 | |||||||||||
|
В первом варианте написан бред. Я же написал, что $.ajax и так промис возвращает.
Насчет второго. Такое ощущение, что вы не читаете, что я пишу. $.ajax отрабатывает асинхронно. Т.е. Отправляется запрос и код выполняется дальше, не дожидаясь ответа сервера. Соответственно, у вас функция вернет undefined, так как в result еще ничего нет. Вот так оно сработает:
0
|
|||||||||||
|
15 / 14 / 9
Регистрация: 16.04.2012
Сообщений: 1,091
|
|||
| 31.12.2015, 14:49 [ТС] | |||
|
В общем, основная задумка такая: На странице должен быть скрипт, который отправляет на сервер несколько запросов подряд. При этом, содержание каждого последующего запроса формируется на основе ответа сервера от предыдущего запроса. Из этого следует, что асинхронное выполнение кода такого скрипта неприемлемо, т.к. для отправки очередного запроса, скрипт должен сначала обработать ответ от предыдущего запроса... В общем, так: отправляем запрос => получаем ответ => формируем запрос => отправляем запрос => ... Как такую задачу можно решить?
0
|
|||
|
Все элементарное - сложно
133 / 118 / 50
Регистрация: 14.04.2014
Сообщений: 509
|
||||||||
| 31.12.2015, 15:43 | ||||||||
|
Я понял, что вы хотите сделать. Повторюсь.
Вывод два: Необходимо использовать асинхронные запросы, чтобы не отпугнуть пользователя. Повторюсь еще раз: Чем для вас плох такой код?
1
|
||||||||
|
Superposition
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
|
|||||||
| 31.12.2015, 16:11 | |||||||
|
Как-то вот так:
1
|
|||||||
| 31.12.2015, 16:20 | |
|
Не по теме: Padimanskas, слишком тяжелый вариант для начинающего =)
0
|
|
|
15 / 14 / 9
Регистрация: 16.04.2012
Сообщений: 1,091
|
|||
| 31.12.2015, 16:50 [ТС] | |||
|
0
|
|||
| 31.12.2015, 16:50 | |
|
Помогаю со студенческими работами здесь
15
Сабмит формы не перезагружая страницу Можно ли отобразить другой URL не перезагружая страницу? Обновление материала каждые 10 секунд не перезагружая страницу
Как отправить страницу на сервер? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|