javascript代码:
Ext.onReady(function() { Ext.create('Ext.form.Panel', { title: 'Upload a Photo', 400, bodyPadding: 10, frame: true, renderTo: "div1", items: [{ xtype: 'filefield', name: 'photo', fieldLabel: 'Photo', labelWidth: 50, msgTarget: 'side', allowBlank: false, anchor: '100%', buttonText: 'Select Photo...'}], buttons: [{ text: 'Upload', handler: function() { var form = this.up('form').getForm(); if (form.isValid()) { form.submit({ url: 'RemoteFileUpload.aspx', waitMsg: 'Uploading your photo...', success: function(fp, o) { Ext.Msg.alert('Success', 'Your photo "' + o.result.file + '" has been uploaded.'); } }); } } }] }); });
后台代码:
protected void Page_Load(object sender, EventArgs e) { Response.Clear(); if (this.SaveFiles()) { Response.Write("{success:true,msg:'File was successfully uploaded.'}"); } else { Response.Write("{success:true,msg:'Possible file upload attack!'}"); } Response.End(); } public Boolean SaveFiles() { ///遍历File表单元素 HttpFileCollection files = HttpContext.Current.Request.Files; try { for (int iFile = 0; iFile < files.Count; iFile++) { ///检查文件扩展名字 HttpPostedFile postedFile = files[iFile]; string fileName, fileExtension; fileName = System.IO.Path.GetFileName(postedFile.FileName); if (fileName != "") { ///注意:可能要修改你的文件夹的匿名写入权限。 postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("upload_files/") + fileName); } } return true; } catch (System.Exception Ex) { return false; } }