Готовое мероприятие по опубликованной форме
У меня есть форма в iframe, когда эта форма публикуется, файл возвращается пользователю (на основе информации формы). Этот файл возвращается с использованием content-disposition:attachment, так что отображается только диалог сохранения файла. Я хочу сделать что-то в JavaScript, как только файл будет возвращен пользователю. Я попытался прикрепить $(iframe).ready(); в iframe после публикации формы, но она мгновенно исчезает.
Стоит отметить: $(iframe).load(); тоже не работает, никогда не срабатывает. Технически сообщение формы является второй загрузкой iframe (первая загрузка отображает форму в iframe).
Есть идеи?
2 ответа
Единственное, что приходит на ум, - это не сразу отправить файл обратно пользователю, а вывести скелет HTML, который 1. выполняет Javascript и 2. когда это делается, перенаправляет в файл загрузки (возможно, с дополнительным Перенаправить, чтобы убедиться, что это работает). Кроме этого, я не думаю, что у вас будет много шансов выполнить Javascript вместе с доставкой файла downlad.
Вы можете попробовать добавить какой-нибудь скрипт в обратный вызов iframe после отправки формы, который будет запускать функцию в родительском окне?
Родительское окно
function test(){
alert('Success!');
}
Обратный звонок iFrame
$(window).load(function(){
parent.test();
})