本文實(shí)例為大家分享了php+ajax實(shí)現(xiàn)無(wú)刷新文件上傳的具體代碼,供大家參考,具體內(nèi)容如下
文件上傳的表單格式
form id="uploadform" enctype="multipart/form-data" name="uploadform" method="post" >
input id="fileToUpload" type="file" name="fileToUpload" class="uploadinput" >
input id="add_file" type="button" value="提交">
/form>
AjaxFileUpload實(shí)現(xiàn)文件異步上傳效果更好,使用簡(jiǎn)單:
!DOCTYPE html>
html>
head>
title>/title>
meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
script type="text/javascript" src="http://www.phpddt.com/usr/themes/dddefault/jquery-1.4.2.min.js">/script>
script type="text/javascript" src="ajaxfileupload.js">/script>
/head>
script>
jQuery(function(){
$("#buttonUpload").click(function(){
//加載圖標(biāo)
/* $("#loading").ajaxStart(function(){
$(this).show();
}).ajaxComplete(function(){
$(this).hide();
});*/
//上傳文件
$.ajaxFileUpload({
url:'upload.php',//處理圖片腳本
secureuri :false,
fileElementId :'fileToUpload',//file控件id
dataType : 'json',
success : function (data, status){
if(typeof(data.error) != 'undefined'){
if(data.error != ''){
alert(data.error);
}else{
alert(data.msg);
}
}
},
error: function(data, status, e){
alert(e);
}
})
return false;
})
})
/script>
body>
input id="fileToUpload" type="file" size="20" name="fileToUpload" class="input">
button id="buttonUpload">上傳/button>
/body>
/html>
上傳還可以傳遞參數(shù):
var data = { name: 'my name', description: 'short description' }
$.ajaxFileUpload({
url: 'upload.php',
secureuri: false,
data: data,
fileElementId: 'fileToUpload',
dataType: 'json',
success: function (data) {
alert(data.msg);
},
error: function (data) {
alert("error");
}
});
主要參數(shù)說(shuō)明:
1、url表示處理文件上傳操作的文件路徑,可以測(cè)試URL是否能在瀏覽器中直接訪問(wèn),如上:upload.php
2、fileElementId表示文件域ID,如上:fileToUpload
3、secureuri是否啟用安全提交,默認(rèn)為false
4、dataType數(shù)據(jù)數(shù)據(jù),一般選json,javascript的原生態(tài)
5、success提交成功后處理函數(shù)
6、error提交失敗處理函數(shù)
需要了解相關(guān)的錯(cuò)誤提示
1、SyntaxError: missing ; before statement錯(cuò)誤
如果出現(xiàn)這個(gè)錯(cuò)誤就需要檢查url路徑是否可以訪問(wèn)
2,SyntaxError: syntax error錯(cuò)誤
如果出現(xiàn)這個(gè)錯(cuò)誤就需要檢查處理提交操作的PHP文件是否存在語(yǔ)法錯(cuò)誤
3、SyntaxError: invalid property id錯(cuò)誤
如果出現(xiàn)這個(gè)錯(cuò)誤就需要檢查屬性ID是否存在
4、SyntaxError: missing } in XML expression錯(cuò)誤
如果出現(xiàn)這個(gè)錯(cuò)誤就需要檢查文件域名稱是否一致或不存在
5、其它自定義錯(cuò)誤
大家可使用變量$error直接打印的方法檢查各參數(shù)是否正確,比起上面這些無(wú)效的錯(cuò)誤提示還是方便很多。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- 基于jquery ajax的多文件上傳進(jìn)度條過(guò)程解析
- 利用SpringMVC和Ajax實(shí)現(xiàn)文件上傳功能
- PHP實(shí)現(xiàn)帶進(jìn)度條的Ajax文件上傳功能示例
- php+ajax 文件上傳代碼實(shí)例
- AjaxUpLoad.js實(shí)現(xiàn)文件上傳
- AjaxUpLoad.js實(shí)現(xiàn)文件上傳功能
- ajaxFileupload實(shí)現(xiàn)多文件上傳功能
- AjaxFileUpload+Struts2實(shí)現(xiàn)多文件上傳功能
- AjaxFileUpload結(jié)合Struts2實(shí)現(xiàn)多文件上傳(動(dòng)態(tài)添加文件上傳框)
- Ajax實(shí)現(xiàn)文件上傳功能(Spring MVC)