私は現在、AJAX アップロード フォームで iframe を使用しています。私の質問は、ファイルが iframe にアップロードされると、データが div に追加されるので、読み込みが完了したら iframe を削除できると言っても過言ではありませんか?
私のjsは
$("#formsubmit").click(function (event) {
event.preventDefault();
var iframe = $('<iframe name="postiframe" id="postiframe" style="display: none" />');
$("body").append(iframe);
var form = $('#theuploadform');
form.attr("action", "uploader.php");
form.attr("method", "post");
form.attr("enctype", "multipart/form-data");
form.attr("encoding", "multipart/form-data");
form.attr("target", "postiframe");
form.attr("file", $('#userfile').val());
form.submit();
$("#postiframe").load(function () {
iframeContents = $("#postiframe")[0].contentWindow.document.body.innerHTML;
$("#textarea").html(iframeContents);
$("#postiframe").remove(); // i thought this would do it but it doesn't
});
return false;
});
また、私はevent.preventDefault();を持っていますが 一番下の return false を削除しても、フォームは送信されます (新しいページに更新されます)。
私のhtmlは:
<div id="uploadform">
<form id="theuploadform" action="">
<input id="userfile" name="userfile" size="50" type="file" />
<input id="formsubmit" type="submit" value="Send File" />
</form>
</div>
<div id="textarea"></div>
私の質問を要約すると:
- 「テキストエリア」にコピーしたら、アップロード後にiframeを削除することは可能ですか
- その場合、 $("#postiframe").remove は機能しません
- return falseを削除すると、event.preventDefault();を使用する代わりにページがリロードされる理由を誰かが知っていますか? 最初に
前もって感謝します。