我想實現與ASP.NET和jQuery的文件上傳功能。我使用輸入文件控制,並在我的頁面中有7個。該頁面是帶有母版頁的ASPX頁面。這是我的代碼;JQuery ajax文件上傳到ASP.NET與輸入文件
ASPX:
<div class="form-group">
<asp:Label runat="server" AssociatedControlID="file1" CssClass="col-md-3 control-label">File 1</asp:Label>
<div class="col-md-9">
<input type="file" id="file1" runat="server" class="filestyle" data-icon="false" data-buttonbefore="true" data-buttontext="Dosya Seç" data-placeholder="Dosya Seçilmedi">
</div>
</div>
<div class="form-group">
<asp:Label runat="server" AssociatedControlID="file2" CssClass="col-md-3 control-label">File 2</asp:Label>
<div class="col-md-9">
<input type="file" id="file2" runat="server" class="filestyle" data-icon="false" data-buttonbefore="true" data-buttontext="Dosya Seç" data-placeholder="Dosya Seçilmedi">
</div>
</div>
的JavaScript:
$(document).ready(function() {
$("#btnUpload").click(function (event) {
var file1 = $("#<%=file1.ClientID %>").files[0];
var file2 = $("#<%=file2.ClientID %>").files[0];
var files = [file1, file2];
if (files.length > 0) {
var formData = new FormData();
for (var i = 0; i < files.length; i++) {
formData.append(files[i].name, files[i]);
}
var progressbarLabel = $('#progressBar-label');
var progressbarDiv = $('#progressbar');
$.ajax({
url: '../Util/UploadHandler.ashx',
method: 'post',
data: formData,
contentType: false,
processData: false,
success: function() {
progressbarLabel.text('Complete');
progressbarDiv.fadeOut(2000);
},
error: function (err) {
alert(err.statusText);
}
});
progressbarLabel.text('Uploading...');
progressbarDiv.progressbar({
value: false
}).fadeIn(500);
}
});
});
我有錯誤,當我按下上傳按鈕,指出file1
是undefined
。
我也試過
var file1 = $("#file1").files[0];
和file1
是undefined
一次。
如何在JavaScript代碼中獲得file1
?
如果您使用「document.getElementById('file1')。files [0]」,您會得到什麼? – AdamJeffers
我仍然未定義 – EMre