2

非表示の iframe を使用して、次のような ajax アップロード ファイル ジョブを実行します。

http://www.alfajango.com/blog/ajax-file-uploads-with-the-if​​rame-method/

<form target="upload-frame" method="post" action="/upload" enctype="multipart/form-data">
    <input type="file" name="file">
    <input type="submit" value="upload">
</form>
<iframe name="upload-frame" src=""></iframe>

問題は、アップロードが成功し、iframe が応答を受信して​​更新されたときです。

更新されたことをどのように知ることができますか? iframe コンテンツの変更をリッスンするイベントはありますか?

4

1 に答える 1

3

1)これにアプローチする1つの方法は、ファイルが次のように正常にアップロードされると、サーバーに応答を送信させることです(PHPを想定):

echo '<script>parent.document.getElementById("feedback").innerHTML = "Success";</script>';

これは、iFrame 親の #feedback コンテナーに成功メッセージを挿入するだけです。

2) もう 1 つの方法は、iFrame のロード/オンロード イベントをリッスンし、iFrame の本体を読み取るイベント ハンドラをそれにアタッチすることです。そのアプローチの例を次に示します: http://viralpatel.net/blogs/ajax-style-file-uploading-using-hidden-iframe/

それが役立つことを願っています!

于 2013-03-02T04:26:55.750 に答える