我想使用jQuery和c#執行文件上傳,但我遇到了很多問題。我無法弄清楚如何讓文件上傳。它工作正常,如果我使用FileUpload,但我允許用戶動態添加文件,所以我正在使用Jquery(ajax發佈到另一個文件)爲了處理文件。首先,我得到一個POST和enctype錯誤,但現在它只是沒有做任何事情。 Firebug向我展示了ajax代碼失敗,但沒有告訴我任何其他事情。使用JQuery和C多文件上傳#
這裏是我的jQuery:
function AddDocumentsDatabase() {
$('input:file').each(function (index) {
var fileName = $(this).val();
$.ajax(
{
type: "POST",
url: "../ajaxURLs/InsertDocument.aspx?requestNumber=" + reqNum + "&fileName=" + fileName,
contentType: 'multipart/form-data',
cache: false,
success: function (html) {
alert("File Inserted!")
}
}
);
});
}
這裏是InsertDocument.aspx代碼:
RequestDB db = new RequestDB();
ApplicationFunctions app = new ApplicationFunctions();
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("Hello");
foreach (string key in Request.Form)
{
if (!key.StartsWith("fleBrowse")) continue;
{
Response.Write(Request.Form[key].GetType());
}
}
}
如果事情真的很簡單,我很抱歉,我的心是不是在滿運行速度,現在。任何建議,非常感謝。
您自己的異步FileUpload是一項艱鉅的任務,取決於瀏覽器支持(HTML5,Flash,...) 您應該檢查現有的實現。 我很滿意plupload:http://www.plupload.com/ – jbl 2012-03-27 19:35:49
同意 - 不需要重新發明這個輪子。特別是因爲jQuery沒有內置的功能來將所選文件的內容實際發佈到服務器上 - 您上面發佈的代碼將發送文件名,但不會發送文件本身,所以您的服務器將無法執行它很多機智。 – Dave 2012-03-27 19:52:33