JQuery ajax 上傳檔案
阿新 • • 發佈:2019-01-22
舊的瀏覽器只能通過IFrame在不重新整理頁碼的情況下提交檔案到伺服器。但在 IE10、Firefox 4.0、Chrome 7、Safari5、Opera 12後,可以利用 FormData 物件方便地提交檔案到伺服器。
關鍵程式碼:
<body>
<div>
<form method="post">
<label>使用者名稱:</label>
<input id="userName" type="text" name="userName" />
<br />
<label>檔名:</label>
<input id="file" type="file" name="file" />
<input id="btn" type="button" value="提交" />
</form>
</div>
<script>
$("#btn").click(function (e) {
e.preventDefault();
var formData = new FormData();
formData.append('file', $('#file')[0].files[0]);
formData.append('userName', $('#userName').val());
$.ajax({
type: "POST",
// method: "POST", //jquery 1.9 以後版本用method
url: "/Home/GetFile",
processData: false , // tell jQuery not to process the data
contentType: false, // tell jQuery not to set contentType
data: formData,
success: function (data, status) {
alert("使用者名稱為:" + data.userName + ",上傳的檔案的大小為:" + data.fileSize);
}
});
});
</script>
</body>