搜索
您的当前位置:首页正文

Uploader文件上传

2024-02-27 来源:吉趣旅游网
Uploader文件上传 Uploader说明

Uploader样式:

1.引入自定义标签库-<%@tagliburi=\"controls\"prefix=\"z\"%>

2.在需要插入上面图片所示的控件的地方插入如下代码:

id:控件ID

width:控件宽(IE下填百分比有问题)

height:控件高(IE下填百分比有问题)

barcolor:进度条颜色,填六位RGB

action:文件上传地址

allowtype:允许选择的文件类型,后缀名用英文逗号隔开

onComplete:上传完毕后调用的js方法,注意不要括号

3.控件提供的可调用方法

addPostParam(values)

设置随文件上传一起提交的表单数据,使用方法为:

首先用vardc=Form.getData($F(\"表单名\"));取得表单内填写的数据;

然后使用getUploader(“控件ID”).addPostParam(dc.toQueryString());将参数添加;

doUpload()

开始上传,调用方法:getUploader(“控件ID”).doUpload();

isComplete()

文件是否上传完毕,该方法返回true或者false

调用方法:getUploader(“控件ID”).isComplete();

文件上传实例

1.在前端页面加一个附件上传的控件如下:

其中allowType表示可以上传文件的类型

2.在前端页面加一个functionupload(){}函数。例子如下:

functionupload(){

if(Verify.hasError()){

return;

}

varuploader=newUploader(\"File\");

if(!uploader.hasFile()){

Dialog.alert(\"未选择文件\");

}

if(!uploader.hasError()){

vardc=Form.getData(\"dialogForm\");

uploader.sendRequest(\"AddAttach.upload\",dc,function(response){

Dialog.alert(\"操作成功!\",function(){

Parent.DataGrid.loadData('grid');

Dialog.close();

});

});

}else{

Dialog.alert(\"上传控件发生错误!\");

}

}

这个函数是通过uploader.sendRequest();方法把文件传到后台。

3.后台写一个upload()方法接受前端页面的文件,提交并上传例子如下:

publicvoidupload(UploadActionua){

ZXOutProjectSchemaoutproject=newZXOutProjectSchema();

Transactiontran=newTransaction();

StringabsoluteCatalogPath=Config.getContextRealPath()+\"Upload\"+\"/\";

Stringext=ServletUtil.getUrlExtension(ua.getFile().getName());//后缀名

Stringname=NoUtil.getMaxID(\"ZXOutProjectID\")+ext;

Filenewfile=newFile(absoluteCatalogPath,name);

try{

ua.getFile().write(newfile);

}catch(Exceptione){

e.printStackTrace();

Response.setError(\"发生错误:\"+e.getMessage());

return;

}

if(ObjectUtil.empty($V(\"ID\"))){

outproject.setValue(Request);

outproject.setStatus(\"1\");

outproject.setAddTime(newDate());

outproject.setAddUser(User.getUserName());

outproject.setID(NoUtil.getMaxID(\"ZXOutProjectID\"));

outproject.setAttach(name);

tran.insert(outproject);

}else{

outproject.setID($V(\"ID\"));

outproject.fill();

outproject.setValue(Request);

outproject.setModifyTime(newDate());

outproject.setModifyUser(User.getUserName());

outproject.setAttach(name);

tran.update(outproject);

}

if(tran.commit()){

Response.setMessage(\"操作成功\");

}else{

Response.setError(\"发生错误:\"+tran.getExceptionMessage());

}

}

注意:upload()里面的参数是UploadActionua;ua.getFile().write(newfile);这段代码是把文件上传到指定的文件夹下面。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top