我使用的是多上传输入控件,它不是服务器端的,即纯 HTML 不是 asp: 标记的。
现在问题出在服务器端,我正在尝试访问 Request 对象的 Files 集合,希望在上传后,输入控件会将文件放入有问题的集合中。
我什至在 javascript 中导入了一些脚本以使其工作,但每当我逐步执行后面的代码时,应包含浏览和选择的文件的 Request.Files 属性始终为空。我应该怎么办?哎呀!抱歉,我没有显示一些代码:
var x = this.Page.FindControl("FileUpload1");
lbuploadmessage.Text = x.GetType().ToString();
HttpFileCollection hfc = Request.Files;
List<L2SQLData.PatientFile> list = new List<L2SQLData.PatientFile>();
for (int i = 0; i < hfc.Count; i++)
{
HttpPostedFile hpf = hfc[i];
if (hpf.ContentLength > 0 && hpf.ContentLength < 1024000)
{
string filename = Path.GetFileName(hpf.FileName);
string ext = Path.GetExtension(hpf.FileName);
var guidname = Guid.NewGuid().ToString();
//FileUpload1.SaveAs(Server.MapPath("~/Uploads/DocClerkings/") + guidname + ext);
hpf.SaveAs(Server.MapPath("~/Uploads/DocClerkings/") + guidname + ext );
lbuploadmessage.Text = "Upload status:" + hpf.FileName + " successfully uploaded!";
如您所见,我将控件命名为“FileUpload1”,但在运行时(调试)对象 x 为空,并且应该包含浏览文件的 Request.Files 集合也为空。多上传控件如下所示:
<input id = "FileUpload1" type="file" class="multi"/>
我添加了两个脚本,如下所示:
<script src="jquery-latest.js" type="text/javascript" language="javascript"></script>
<script src="jquery.MultiFile.js" type="text/javascript" language="javascript"></script>
那么我遗漏了什么?
干杯