thinkphp jquery实现图片上传和预览效果


Posted in PHP onJuly 22, 2020

本文实例为大家分享了jquery实现图片上传和预览效果的具体代码,供大家参考,具体内容如下

先上效果图:

thinkphp jquery实现图片上传和预览效果

那个file按钮样式先忽略

点击选择图片(浏览),随便选一张图片

thinkphp jquery实现图片上传和预览效果

js代码如下

//上传图片立即预览
 function PreviewImage(imgFile) {
 var filextension = imgFile.value.substring(imgFile.value
 .lastIndexOf("."), imgFile.value.length);
 filextension = filextension.toLowerCase();
 if ((filextension != '.jpg') && (filextension != '.gif')
 && (filextension != '.jpeg') && (filextension != '.png')
 && (filextension != '.bmp')) {
 alert("对不起,系统仅支持标准格式的照片,请您调整格式后重新上传,谢谢 !");
 imgFile.focus();
 } else {
 var path;
 if (document.all)//IE
 {
 imgFile.select();
 path = document.selection.createRange().text;
 document.getElementById("photo_info").innerHTML = "";
 document.getElementById("photo_info").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true',sizingMethod='scale',src=\""
  + path + "\")";//使用滤镜效果 
 } else//FF
 {
 path = window.URL.createObjectURL(imgFile.files[0]);// FF 7.0以上
 //path = imgFile.files[0].getAsDataURL();// FF 3.0
 document.getElementById("photo_info").innerHTML = "<img id='img1' width='120px' height='100px' src='"+path+"'/>";
 //document.getElementById("img1").src = path;
 }
 }
 }

html代码,其实不重要啦

<div class="form-group has-success has-feedback">
  <label for="info_photo" class="col-sm-2 control-label">物品图片</label>
  <div class="col-sm-10">

  <span class="btn btn-success btn-file"> 选择图片 <span
   class="glyphicon glyphicon-picture" aria-hidden="true"></span>
   <input type="file" name="info_photo" value="" id="info_photo"
   onchange='PreviewImage(this)' />
  </span>
  </div>

  </div>

  <div class="form-group has-success has-feedback">
  <label for="info_desc" class="col-sm-2 control-label"><span
  style="color: red;">* </span> 详细描述</label>
  <div class="col-sm-10">
  <textarea class="form-control" rows="5" id="info_desc"
   name="info_desc" placeholder="如需补充,请填写..." title="可包含中文数字和常用字符"></textarea>
  <div id="photo_info" class="photo_info"></div>
  </div>
  </div>

css代码就不上了啊
顺便补充一下thinkphp上传图片代码,把整个发布消息都拷过了算了

public function loseThing(){
 $m=M('info');
 $m->create();
 $upload = new \Think\Upload();// 实例化上传类
 $upload->maxSize = 3145728 ;// 设置附件上传大小
 $upload->exts = array('jpg', 'gif', 'png', 'jpeg','bmp');// 设置附件上传类型
 $upload->rootPath = './Public/';
 $upload->savePath = '/Uploads/'; // 设置附件上传目录
 $upload->autoSub = false;
 // 上传文件
 $info = $upload->upload();
 if($info) {
 // 上传成功
 foreach($info as $file){
 $m->info_photo=$file['savename'];
 }
 }
 $m->create_time=date('Y-m-d H:i:s',time()); 
 $m->uid=$_SESSION['id'];
 $m->username=$_SESSION['username'];
 /* $m->user_img=$_SESSION['filename']; */

 $m->info_type="寻物启事";//信息类型为失物
 $lastId=$m->add();
 if($lastId){
 $this->success('发布成功');
 }else{
 $this->error('发布失败,请先登录');
 } 
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP5.0正式发布 不完全兼容PHP4 新增多项功能
Oct 09 PHP
用PHP和ACCESS写聊天室(七)
Oct 09 PHP
PHP 编程请选择正确的文本编辑软件
Dec 21 PHP
解析php函数method_exists()与is_callable()的区别
Jun 21 PHP
php字符串截取函数用法分析
Nov 25 PHP
PHP中的闭包(匿名函数)浅析
Feb 07 PHP
PHP人民币金额转大写实例代码
Oct 02 PHP
thinkPHP3.x常量整理(预定义常量/路径常量/系统常量)
May 20 PHP
PHP中strpos、strstr和stripos、stristr函数分析
Jun 11 PHP
thinkPHP5.0框架引入Traits功能实例分析
Mar 18 PHP
php从数据库中获取数据用ajax传送到前台的方法
Aug 20 PHP
php 策略模式原理与应用深入理解
Sep 25 PHP
详解PHP用substr函数截取字符串中的某部分
Dec 03 #PHP
微信公众平台开发(五) 天气预报功能开发
Dec 03 #PHP
php die()与exit()的区别实例详解
Dec 03 #PHP
详解Yii2 rules 的验证规则
Dec 02 #PHP
Yii框架数据模型的验证规则rules()被执行的方法
Dec 02 #PHP
thinkPHP统计排行与分页显示功能示例
Dec 02 #PHP
thinkPHP交易详情查询功能详解
Dec 02 #PHP
You might like
php对csv文件的读取,写入,输出下载操作详解
2013/08/10 PHP
Valerio 发布了 Mootools
2006/09/23 Javascript
JS代码格式化和语法着色V2
2006/10/14 Javascript
按钮JS复制文本框和表格的代码
2011/04/01 Javascript
简单的前端js+ajax 购物车框架(入门篇)
2011/10/29 Javascript
javascript中input中readonly和disabled区别介绍
2012/10/23 Javascript
javascript按位非运算符的使用方法
2013/11/14 Javascript
jQuery获取当前对象标签名称的方法
2014/02/07 Javascript
js数组与字符串的相互转换方法
2014/07/09 Javascript
js事件绑定快捷键以ctrl+k为例
2014/09/30 Javascript
JS点击链接后慢慢展开隐藏着图片的方法
2015/02/17 Javascript
基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
2015/09/06 Javascript
JavaScript中的return语句简单介绍
2015/12/07 Javascript
jQuery事件绑定on()与弹窗实现代码
2016/04/28 Javascript
chrome下判断点击input上标签还是其余标签的实现方法
2016/09/18 Javascript
JS实现表单验证功能(验证手机号是否存在,验证码倒计时)
2016/10/11 Javascript
微信小程序 网络请求(GET请求)详解
2016/11/16 Javascript
JS正则表达式判断有效数实例代码
2017/03/13 Javascript
react-router JS 控制路由跳转实例
2017/06/15 Javascript
JavaScript之面向对象_动力节点Java学院整理
2017/06/29 Javascript
移动端Ionic App 资讯上下循环滚动的实现代码(跑马灯效果)
2017/08/29 Javascript
原生js调用json方法总结
2018/02/22 Javascript
Vue.set 全局操作简单示例
2019/09/19 Javascript
jquery实现图片无缝滚动 蒙版遮蔽效果
2020/01/11 jQuery
nuxt.js添加环境变量,区分项目打包环境操作
2020/11/06 Javascript
javascript中call,apply,bind的区别详解
2020/12/11 Javascript
[01:58]最残酷竞争 2016国际邀请赛中国区预选赛积分循环赛回顾
2016/06/28 DOTA
[01:13:46]iG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python 基于Apscheduler实现定时任务
2020/12/15 Python
Araks官网:纽约内衣品牌
2020/10/15 全球购物
英文自我鉴定
2013/12/10 职场文书
个人求职简历中英文自我评价
2013/12/16 职场文书
保研专家推荐信范文
2015/03/25 职场文书
活着观后感
2015/06/03 职场文书
一文搞懂Python Sklearn库使用
2021/08/23 Python
手写Spirit防抖函数underscore和节流函数lodash
2022/03/22 Javascript