这里我用到了ajaxFileUpload插件。
基本用法:
$.ajaxFileUpload({
url:'',//单引号间填写上传处理文件的路径。
fileElementId:'',//单引号间填写上传文件的id。
secureuri:'',//单引号间填写的内容表示是否安全提交,默认填写false。
dataType:'',//单引号间填写经服务器处理之后返回的数据类型,这里有xml,script,json,html,text。
data:'',//单引号间填写填写除文件信息外的其它信息,用json数据格式。
type:'',//单引号间填写提交信息是的方法,常用的有post和get。
success:function(data,status){},//参数data为后台处理文件返回的数据,status是返回的状态,这里有error、success、timeout。{}之间是对返回结果的处理。
error:function(data,status,e){}//data和error参数同上,e是异常信息。
})
例子:
首先是fileupload.html
然后upload.js
function ajaxImgUpload(){ $.ajaxFileUpload ( { url:'upfile.php', //你处理上传文件的后台文件 type:'POST', secureuri:false, fileElementId:'filemsg', dataType: 'json', data:{describe:$("#desmsg").val()}, success: function (data,status) { //对返回结果的处理程序 }, error:function(data,status,e){ //对返回结果的处理程序 } } )}
最后是upfile.php
0){echo json_encode(myfile);}else{if(file_exists(iconv("UTF-8", "gb2312","../file/".$filename))){ //防止中文乱码myfile["myallowerror"]=$filename."已经存在!无需上传";$url="../file/".$filename;myfile["url"]=$url;echo json_encode(myfile);}else{move_uploaded_file(myfile["tmp_name"],iconv("UTF-8", "gb2312","../file/".$filename));$url="../file/".$filename;echo json_encode(myfile);}}}}else{myfile["myerror"]="不符合的文件类型";echo json_encode(myfile);}