<button class="btn button uploadAndNext" id="importWhiteBtn" type="button">
<span class="button">提交導入</span>
</button>
2.然後是js
$(function(){
var uploadCom = null;
function uploadIt() {
$("#importWhiteBtn").click(function() {
var uploadId = "#" + $(this).attr("id");
var btn = $(this);
uploadCom = new AjaxUpload( uploadId + "" , {
action : "whitePhoneNumber.do?action=importFile",
onSubmit: function(file, ext) {
if ((ext && /^(txt)$/.test(ext))) {
alert("請先下載導入模板readme.txt參考,您上傳的文檔格式不對,請重新選擇!");
return false;
}
$.blockUI({
message:"正在上傳到服務器...."
})
},
onComplete: function(file, response) {
$.unblockUI();
if(response=="success"){
alert( "導入成功");
$('#whitePhoneList').flexReload();
}else{
alert( "導入失敗,"+response);
}
}
});
});
$(".uploadAndNext").click();
}
uploadIt();
firstClick = false;
})
3.最後是action
public ActionForward importFile(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception{
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
String success = "success";
BufferedReader br=null;
InputStream in=null;
String operator = UserNameUtil.getUserName(request);
String areaCode = whitePhoneManager.getAreaCodeByOperator(operator);
try {
List<FileItem> list = upload.parseRequest(request);
for (int i = 0; i < list.size(); i++) {
FileItem fileItem = list.get(i);
String name = fileItem.getName().substring(
fileItem.getName().lastIndexOf("\\") + 1);
if(fileItem.getSize() > 2097152){//200k
throw new Exception(" 文件大小超過2M");
}
log.debug("upload file name:" + name);
in= fileItem.getInputStream();
br = new BufferedReader(new InputStreamReader(in));
whitePhoneManager.processFile(br,areaCode);
logutil.log_Operation(request, LogUtil.LOG_MODULE_SYSTEMCONFIG,
LogUtil.LOG_EVENT_CREATE, "批量導入短信白名單", "filename: "
+ name, "成功",
LogUtil.SUCCESS);
}
} catch (FileUploadException e) {
log.debug("error", e);
success=e.getMessage() ;
} catch (Exception e) {
log.debug("error", e);
success=e.getMessage() ;
}finally{
if(br!=null) try{br.close();}catch(Exception e){log.error("unable to close bufferdreader",e);}
if(in!=null) try{in.close();}catch(Exception e){log.error("unable to close inputstream",e);}
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
response.getWriter().write( success );
return null;
}
}