header('Content-Disposition: attachment私の質問は次のとおりです。PHP の... 手法を使用してファイルをダウンロードした後、ダウンロード元の Web ページのdocument.readyState値はinteractive.
completeダウンロードが完了したので、これが代わりになると思います。
何か不足していますか、それともこれは予想される動作ですか?
後者の場合、document.readyStateバックをにリセットする方法はありますcompleteか?
(違いがある場合、これは Internet Explorer を使用しています...)
バックグラウンド:
ページの読み込みが完了したときにのみアクティブにしたいJavaScript関数がいくつかあるので、使用します
if( document.readyState != "complete" ) return;
この目標を達成するための開始時に。document.readyStateこれはinteractive、プログレッシブロード中と同様に、ページロードで適切に機能し、ページロードのcomplete完了時にのみ機能します。
ページの後半で、読み込まれたデータをダウンロードできるように、ユーザーを以下の PHP コードに送るリンクを提示します。
header( 'Content-Type: text/csv; charset=Shift-JIS' );
header( 'Content-Disposition: attachment; filename="' . $filename . '"' );
$output = fopen( 'php://output', 'w' );
//write to file output...
fclose( $output );
ここで、このリンクを押すと、document.readyState最初に が発生しloading、次にが発生しますinteractiveが、状態はそこにとどまり、 に移動することはないcompleteため、以前の JavaScript 関数は無効になります...
なぜそうなのか、私は途方に暮れており、あらゆる方向で助けていただければ幸いです。