首页 > PHP教程 > php开发知识文章

PHP Thinkphp框架使用ajaxFileUpload上传图片

图片上传

图片上传处理有2中方法:直接用表单提交的方式进行文件传输,或使用ajax异步上传。

本文介绍图片上传插件ajaxfileupload的用法,欢迎大家的学习。

 

ajaxfileupload插件

如果使用的时候报错:handler is not a function,原因便是jquery从1.9.0开始便不再使用handler这个方法。

解决方法是使用以前版本的jquery,或在下载下来的jquery添加代码:

jQuery.extend({
//新加
handleError: function (s, xhr, status, e) {
// If a local callback was specified, fire it
if (s.error) {
s.error.call(s.context || s, xhr, status, e);
}
// Fire the global callback
if (s.global) {
(s.context ? jQuery(s.context) : jQuery.event).trigger("ajaxError", [xhr, s, e]);
}
}
})

ajaxfileupload插件用法

html和js代码

<input  type="file" id="upload" name="imagefile" accept="image/png,image/gif"  />
<input type="button" value="上传" onclick="return ajaxFileUpload();"/>

<script src="jquery-1.7.1.js" type="text/javascript"></script>
<script src="ajaxfileupload.js" type="text/javascript"></script>
<script>
//图片上传
function ajaxFileUpload()
{

$.ajaxFileUpload({
url:'/web/app/upload',//用于文件上传的服务器端请求地址
secureuri:false ,//一般设置为false
fileElementId:'upload',//文件上传控件的id属性 <input type="file" id="upload" name="upload" />
dataType: 'text',//返回值类型 一般设置为json
success: function (message) //服务器成功响应处理函数
{
alert(message);
},
error: function (data, status, e)//服务器响应失败处理函数
{
alert(e);
}
});
return false;
}
</script>

如果返回的数据一直是undefined,将ajaxfileupload.js里的 eval('data = '+  data) ;  改成 data = jQuery.parseJSON(jQuery(data).text());

以上就是这篇文章PHP Thinkphp框架使用ajaxFileUpload上传图片的全部内容了,希望本文的内容对大家的学习带来一定的帮助。

PHP Thinkphp框架使用ajaxFileUpload上传图片

关闭
感谢您的支持,我会继续努力!
扫码打赏,建议金额1-10元


提醒:打赏金额将直接进入对方账号,无法退款,请您谨慎操作。