时间:2021-07-01 10:21:17 帮助过:27人阅读
具体如下:
1.引入文件
<!--图片上传begin--> <script type="text/javascript" src="/js/jquery.form.js"></script> <script type="text/javascript" src="/js/uploadImg.js"></script> <link href="/css/uploadImg.css" rel="stylesheet" type="text/css" /> <!--图片上传end-->
2.html部分
<p class="upimg">
<input name="icon" type="text" class="imgsrc" value="<!--{$contents.icon}-->" />
<p class="showimg">
<!--{if $contents.icon}-->
<img src="<!--{$contents.icon}-->" height="120px">
<!--{/if}-->
</p>
<p class="btn" style="height:20px;">
<span>添加图片</span>
<input class="fileupload" type="file" name="pic[]">
</p>
</p>3.给fileupload加上表单
/*图片上传*/
$(".fileupload").wrap("<form action='/bookstore/book/uploadpic' method='post' enctype='multipart/form-data'></form>"); //函数处理4.ajax文件上传
jQuery(function ($) {
$(".fileupload").change(function(){ //选择文件
if ('' === $(this).val()) return;
var upimg = $(this).parent().parent().parent();
var showimg = upimg.find('.showimg');
var btn = upimg.find('.btn span');
var imgsrc = upimg.find('.imgsrc');
$(this).parent().ajaxSubmit({
//dataType: 'json', //数据格式为json
beforeSend: function() { //开始上传
showimg.empty(); //清空显示的图片
imgsrc.val("");
btn.html("上传中..."); //上传按钮显示上传中
},
uploadProgress: function(event, position, total, percentComplete) {
},
success: function(data) { //成功
//获得后台返回的json数据,显示文件名,大小,以及删除按钮
var img = data;
//显示上传后的图片
imgsrc.val("");
imgsrc.val(img);
showimg.html("<img width='120' height='120' src='"+img+"'>");
btn.html("上传成功"); //上传按钮还原
},
error:function(xhr){ //上传失败
btn.html("上传失败");
}
});
});
});5.后台进行处理
public function uploadpicAction(){ //图片上传和显示
$data = "";
$src = $this->uploadFiles2($imgpath = "/upload/book" ,$filesname = "pic");
isset($src[0]['src']) && $src[0]['src'] ? $data = $this->concaturl($src[0]['src']) : null;
echo $data;
}6.将返回的数据交给前端,进行一些处理。
进而提交到后台数据库。

以上就是本文的全部内容,希望对大家的学习有所帮助。
相关推荐:
thinkPHP实现的验证码登录功能
Thinkphp中的volist标签用法
thinkPHP5实现的查询数据库并返回json数据实例
以上就是php+ajax无刷新上传图片的实现方法的详细内容,更多请关注Gxl网其它相关文章!