我想使用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