Событие Javascript после обработки формы - PullRequest
0 голосов
/ 18 февраля 2011

Как javascript регистрирует обратный вызов для запуска, когда сервер завершил обработку формы?Это мои особые настройки:

<form 
    id="savePlaylistForm" 
    name="savePlaylistForm" 
    target="savePlaylistIFrame"
    method="post"
    action="<?=base_url()?>index.php/savePlaylist">
    <input 
        type="hidden" 
        id="savePlaylistEntire"
        name="savePlaylistEntire" />
</form>
<iframe
    id="savePlaylistIFrame"
    name="savePlaylistIFrame"
    style="display: none">
</iframe>

Я пробовал следующее безрезультатно:

onSubmit

Присоединение onSubmit к формене правильное событие, потому что onSubmit происходит, когда клиент пытается отправить.С сервером еще даже не связывались.

onLoad

Я прикрепил onLoad к целевому фрейму.В моем случае его не уволят.Мой серверный скрипт устанавливает заголовки для эмуляции файла списка воспроизведения m3u.IFrames запускаются onLoad только тогда, когда загружается обычная HTML-страница, а не когда появляется диалоговое окно сохранения файла.Даже если бы я загружал обычную HTML-страницу в iFrame, onLoad запускается только при первой отправке формы пользователем.Последующие представления не будут активированы onLoad.

1 Ответ

1 голос
/ 18 февраля 2011

Это не имеет никакого смысла, хотя отправка формы перезагружает страницу с новым ответом. Итак, ваш оригинальный документ больше не будет существовать, так как он может выполнить обратный вызов?

Вы можете просто прикрепить обработчик onSubmit, который отменяет действие отправки по умолчанию (возвращая false), и повторить отправку в браузере по умолчанию, выполнив вызов Ajax. Затем у вас есть место для прикрепления ответного обратного вызова (путем прослушивания onReadyStateChange или использования чего-то более высокого уровня, такого как jQuery).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...