1、基于TP3.2+ajaxfileupload进行无刷新上传图片,本次只上传一张,多张以后搞出来再发

2、效果:

 

3、html代码:

 <html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>ajax上传文件</title>
<style type="text/css">
#con{
width:500px;
height:500px;
border:1px solid #ddd;
margin:50px auto;
}
#look{
width:300px;
height:300px;
border:1px solid #aaa;
margin:10px auto;
text-align: center;
line-height:300px;
color:#aaa;
}
#uploadBtn{
display:block;
width:100px;
line-height:35px;
background:#3F9F00;
color:#fff;
text-align: center;
margin:20px auto;
cursor:pointer;
} </style>
</head>
<body>
<div id="con">
<div id="look">预览区</div>
<span id="uploadBtn">点击上传</span>
<input type="file" style="display:none;" id="uploadFile" name="uploadFile" onchange="uploadFile()"/>
</div>
<script type="text/javascript" src="__ROOT__/Public/JS/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="__ROOT__/Public/JS/ajaxfileupload.js"></script>
<script type="text/javascript">
$("#uploadBtn").click(function(){
$("#uploadFile").click();
});
function uploadFile(){
var url = "{:U('home/Upload/ajax_uploadPic')}";
$.ajaxFileUpload({
url: url,
type: 'post',
secureuri: false, //一般设置为false
fileElementId: "uploadFile", // 上传文件的name属性名
dataType: 'text', //返回值类型,一般设置为json
success: function(data){
var imgName=delHtmlTag(data.replace(/\"/g,""));
var imgsrc = "https://m.xxiangfang.com/Uploads/"+imgName;//此处填写你的图片存储地址
var Img = "<img src="+imgsrc+" height='300'width='300'>";
$("#look").html(Img);
//写存储数据库逻辑,最好在后台进行存储 },
error: function(data, status, e){
alert(e);
console.log(data);
}
});
}
function delHtmlTag(str){
return str.replace(/<[^>]+>/g,"");//去掉所有的html标记
}
</script>
</body>
</html>

4、后台php:

    /**
* 实现ajax无刷新上传图片 -xzz
* 基于TP3.2框架
*/
public function ajax_uploadPic(){
$config = array(
'maxSize' => 3145728,
'rootPath' => './Uploads/',
'saveName' => array('uniqid',''),
'exts' => array('jpg', 'gif', 'png', 'jpeg'),
'autoSub' => true,
'subName' => array('',''),
);
$upload = new \Think\Upload($config);// 实例化上传类
$info = $upload->upload();
$path = $info['uploadFile']['savename'];
$this->ajaxReturn($path); //这里进行路径存储于数据库
//code
}

5、简单的一个Demo,拿去耍~(JS插件有想要的M我邮箱:857328943@qq.com)

TP3.2:实现Ajax无刷新上传图片的更多相关文章

  1. Thinkphp框架 -- ajax无刷新上传图片

    用Thinkphp框架做无刷新上传图片 视图层 View <!doctype html> <html lang="en"> <head> < ...

  2. ajax无刷新上传图片

    页面: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> & ...

  3. 无刷新上传图片,ajax 和 iframe

    iframe 上传 upload.html 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ...

  4. nodejs利用ajax实现网页无刷新上传图片

    nodejs利用ajax实现网页无刷新上传图片 标签(空格分隔): nodejs 通常情况下上传图片是要通过提交form表单来实现的,但是这又不可避免的产生了网页转. 利用ajax技术和FormDat ...

  5. 移动端图片上传解决方案localResizeIMG先压缩后ajax无刷新上传

    现在科技太发达,移动设备像素越来越高,随便一张照片2M+,但是要做移动端图片上传和pc上略有不同,移动端你不能去限制图片大小,让用户先处理图片再上传,这样不现实.所以理解的解决方案就是在上传先进行图片 ...

  6. ajaxFileUpload.js 无刷新上传图片,支持多个参数同时上传,支持 ie6-ie10

    /* 131108-xxj-ajaxFileUpload.js 无刷新上传图片 jquery 插件,支持 ie6-ie10 依赖:jquery-1.6.1.min.js 主方法:ajaxFileUpl ...

  7. php无刷新上传图片和文件

    核心思想:通过Html的iframe标签属性操作顶级窗口,再用php动态无刷新上传图片文件. 示例如下: demo |------uploads #存放上传的文件 |------index.php | ...

  8. Ajax.BeginForm()实现ajax无刷新提交

    1. 同时安装 Microsoft jQuery Unobtrusive ajax 和 jQuery Unobtrusive Ajax,如下图 安装完成之后多了如下的js库 2. 引用该js库 lay ...

  9. 使用SWFUpload无刷新上传图片

    使用SWFUpload组件无刷新上传图片 在做项目时,需要用到一个图片的无刷新上传,之前听说过SWFUpload,于是想要通过SWFUpload来进行图片的无刷新上传,由于我的项目属于是ASP.NET ...

随机推荐

  1. python接口自动化6-重定向(Location)

    前言 某屌丝男A鼓起勇气向女神B打电话表白,女神B是个心机婊觉得屌丝男A是好人,不想直接拒绝于是设置呼叫转移给闺蜜C了,最终屌丝男A和女神闺蜜C表白成功了,这种场景其实就是重定向了. 一.重定向 1. ...

  2. SCRUM黑

    来自 :coolshell 这篇文章的原文在这里(原文链接)(下文不是全译,也不是部分译,我只是把其总结,有我自己的发挥,但是原意大致不变),这篇文章完全是在调侃Scrum的,作者第一段就是一个免费声 ...

  3. UITableViewCell状态切换效果

    UITableViewCell状态切换效果 效果图 源码 https://github.com/YouXianMing/Animations // // TableViewTapAnimationCo ...

  4. POP数值动画

    POP数值动画 效果 源码 https://github.com/YouXianMing/Animations // // PopNumberController.m // Animations // ...

  5. Dom4j学习笔记

    一.Loading XML Data 以下代码从File中或一个URL中读取一个XML文件,并产生一个Document对象.一个Document对象表示了内存中的一棵XML树,可以在这个XML树中进行 ...

  6. 解决sqoop报错:java.lang.OutOfMemoryError: Java heap space

    报错栈: -- ::, INFO [main] org.apache.sqoop.mapreduce.db.DBRecordReader: Executing query: = ) AND ( = ) ...

  7. 第四章 四种List实现类的对比总结

    1.ArrayList 非线程安全 基于对象数组 get(int index)不需要遍历数组,速度快: iterator()方法中调用了get(int index),所以速度也快 set(int in ...

  8. java 解析 XML实例

    package com.hseact.fecp.servlet; import java.io.IOException; import javax.xml.parsers.DocumentBuilde ...

  9. 【Django】Django如何保证并发操作数据一致性问题

    代码示例: 使用 select for update 数据库查询 select ... for update 是数据库层面上专门用来解决并发取数据后再修改的场景的,主流的关系数据库 比如mysql.p ...

  10. 【ACM】杭电ACM题一直WA求高手看看代码

    数据测试了好几个都没问题,可以就是WA不让过,检测了2个小时还是没发现有什么问题T_T!!求高手看看代码,小弟在此谢谢各位哦! #include <stdio.h> #include &l ...