Готовое мероприятие по опубликованной форме

У меня есть форма в 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();
})
Другие вопросы по тегам