Thinkphp怎么结合ajaxFileUpload实现ajax异步图片传输

2023年 8月 6日 65.8k 0

1、引用文件

先引入jQuery与ajaxFileUpload插件。注意先后顺序,这个不用说了,所有的插件都是这样。

登录后复制

2、HTML代码

缩略图

选择图片

登录后复制

3、JS代码

$(function(){
$("#btn_thumb").click(function(){
$("#file_thumb").click();
});

//异步上传
$("body").delegate('#file_thumb', 'change', function(){
var filepath = $("input[name='thumb']").val();
var arr = filepath.split('.');
var ext = arr[arr.length-1];
//alert(filepath);exit();

if('gif|jpg|png|bmp'.indexOf(ext)>=0){
$.ajaxFileUpload({
url: '/admin/slide/upload_image',
secureurl: false,
fileElementId: 'file_thumb', //file标签ID
dataType: 'json', //返回数据类型
data:{name:'thumb'},
success:function (data,status){
$("#info_thumb").val(data);
$("#show_thumb").attr('src','/uploads/images/'+data);
$("#info_thumb").focus();
},
complete:function (XMLHttpRequest){

},
error:function (data,status,e){
layer.alert('上传失败!');
},
});
} else {
//清空file
$("#file_thumb").val("");
layer.alert('请上传合适的图片类型!');
}

});
});

登录后复制

4、后台处理(PHP)

//单文件(包含单文件)异步上传
public function upload_image(){
//图片上传
$file = request()->file(input('name'));
$info = $file->move(ROOT_PATH . 'public/uploads/images');
if($info) {
return json_encode($info->getSaveName());
}
}

登录后复制

5、前台调用

    {volist name="data" id="vo"}

  • {$vo.title}

    {$vo.title}

  • {/volist}

登录后复制

以上就是Thinkphp怎么结合ajaxFileUpload实现ajax异步图片传输的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论