页面中有默认的图片,触发type为file的input时,更换图片,这个是mui移动端的项目,算了,不多说,开码

首先,先在html页面中设置样式,样式我就不给了,贴个布局

<div class="re_page_title re_linecolor_3 bule">模块5</div>
  <li class="mobile_list aa">
<dd>URL:</dd>
<dd><input type="text" placeholder="请输入添加的网址" id="urlIdUpload" class="urlIdUpload"/></dd>
<dd>描述:</dd>
<dd><input type="text" placeholder="请输入描述" id="detailUpload" class="detailUpload"/></dd>
<dd><span class="defaultIcon">默认图标:</span>
<form id="form1" runat="server" style="width:65%;float:left;">
  <button type="button" class="fileUploadBox">更多图标
    <input type='file' accept="image/* id="imgInp" class="iconFileUpload"/>
  </button>
  <div class="iconShow">
<img id="blah" class="blah" src="./resources/images/default.png" alt="默认图片"/>
  </div>
</form>
<button type="button" class="mui-btn mui-btn-success resetBtn" id="resetBtn">重置</button>
</dd>
  </li>
 <li class="mobile_list aa">
<dd>URL:</dd>
<dd><input type="text" placeholder="请输入添加的网址" id="urlIdUpload" class="urlIdUpload"/></dd>
<dd>描述:</dd>
<dd><input type="text" placeholder="请输入描述" id="detailUpload" class="detailUpload"/></dd>
<dd><span class="defaultIcon">默认图标:</span>
<form id="form1" runat="server" style="width:65%;float:left;">
  <button type="button" class="fileUploadBox">更多图标
    <input type='file' accept="image/* id="imgInp" class="iconFileUpload"/>
  </button>
  <div class="iconShow">
<img id="blah" class="blah" src="./resources/images/default.png" alt="默认图片"/>
  </div>
</form>
<button type="button" class="mui-btn mui-btn-success resetBtn" id="resetBtn">重置</button>
</dd>
  </li>

  

单个更换图片:

function readURL(input) {
  if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('.blah').attr('src', e.target.result);
};
reader.readAsDataURL(input.files[0]);
  }
}
$(".iconFileUpload").change(function(){  //调用
  readURL(this); });

  

多个图片循环遍历更换:

var fileNum = $('.iconFileUpload');	//获取上传图片按钮
mui.each($('.iconFileUpload'),function(index,item){ //遍历
var newItem = item; //item是获取的input元素,index是下标
$('.iconFileUpload').change(function(){ //当上传触发,改变的时候
var el = newItem; //将元素赋值给el
var imgNum = $(this).parent().siblings('.iconShow').children('img'); //获取到当前上传input之后需要显示图片的img框架
if (el.files && el.files[0]) { //获取到这个文件或图片的信息或对象
var reader = new FileReader(); //新建一个文件对象
reader.onload = function (e) {
$.each(imgNum,function(){ //循环遍历多个图片框架
  $(this).attr('src', e.target.result); //给当前的图片更换地址
});
};
reader.readAsDataURL(el.files[0]);
  }
});
});

  

最终我的结果:

亲测有效,可以利用单个的先尝试,若是多个的需要遍历的可用下面的,但代码根据布局的变化会变化,不确定都有效,单个的有效,可自己再次修改即可。

这个暂时没有用到‘相机’。‘从相册中选取’等等的js代码,但是这个在手机上也是可以直接用的,file的input在手机上可识别。

看了网上好多的方法,最终暂时用了这个,等过几天和后台接洽的时候再看看有没有毛病!

实践才能真知!!!

mui实现图片更换(暂未上传)的更多相关文章

  1. #添加图片,最多只能上传9张.md

    #添加图片,最多只能上传9张.md 前端页面: ```javascript <form id="imgForm" enctype="multipart/form-d ...

  2. 使用Git进行本地提交后,未上传提交,却不小心删除了本地提交或提交所在分支,怎么办?????

    使用Git进行本地提交后,未上传提交,却不小心删除了本地提交或提交所在分支,怎么办????? 不要紧!!!! 可以使用git reflog命令来帮助恢复删除的本地提交! 运行以下命令你就知道怎么用了! ...

  3. 使用html5 FileReader获取图片,并异步上传到服务器(不使用iframe)

    使用html5 FileReader获取图片,并异步上传到服务器(不使用iframe)   原理: 1.使用FileReader 读取图片的base64编码 2.使用ajax,把图片的base64编码 ...

  4. 适应各浏览器图片裁剪无刷新上传jQuery插件(转)

    看到一篇兼容性很强的图片无刷新裁剪上传的帖子,感觉很棒.分享下!~ 废话不多说,上效果图. 一.首先建立如下的一个page <!DOCTYPE html> <html xmlns=& ...

  5. puzz: 图片和表单上传的不一致问题

    1.    方向1 用户提交表单, 图片和表单同步上传.(由同一服务器处理, 服务器压力大. 没有分离) 2.    方向2 图片和表单分开上传. 如图片访问ftp,表单提交后台(图片和后台分离) 2 ...

  6. 【Android实战】----基于Retrofit实现多图片/文件、图文上传

    本文代码详见:https://github.com/honghailiang/RetrofitUpLoadImage 一.再次膜拜下Retrofit Retrofit不管从性能还是使用方便性上都非常屌 ...

  7. 使用html5 FileReader获取图片,并异步上传到server(不使用iframe)

    使用html5 FileReader获取图片,并异步上传到server(不使用iframe) 原理: 1.使用FileReader 读取图片的base64编码 2.使用ajax.把图片的base64编 ...

  8. Android实战简易教程-第二十八枪(基于Bmob实现头像图片设置和网络上传功能!)

    上一篇我们介绍了怎样由uri转换成String ,本文就用到了上篇文章的方法.以下我们介绍一下怎样设置头像后将头像图片上传到云端的方法,本文基于Bmob提供的服务. 看一下代码:(布局文件和前两篇文章 ...

  9. mui调用本地相册调用相机上传照片

    调用mui的常用库和jquery html部分: <header class="mui-bar mui-bar-nav"> <a class="mui- ...

随机推荐

  1. C# Linq 取得两个列表的交集

    我们经常会用到linq 来查询 一个数组中和另一个数组中相同的项, 这个时候就会用到IEqualityComparer接口. public class StudyInfoModel {      pu ...

  2. MQTT协议简介及协议原理

    MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建 ...

  3. 用OpenLayers开发地图应用

    项目背景 最近有一个使用全球地图展示数据的项目,用地图展示数据本身没什么难度,但出于安全和保密的考虑,甲方单位要求项目不能连接外网,只能在内网使用,也就是说,我们不得不在内网中部署一个地图服务器,在这 ...

  4. 报错:在做往下拉选里面拼接数据的时候 3个下拉选显示一个值 原因 @scope(单例)或者没配默认单例

    解决 @scope(多例)  这是因为造成线程并发访问不安全

  5. Protobuf 文件生成工具 Prototool 命令详解

    Protobuf 文件生成工具 Prototool 命令详解 简介 Prototool 是 Protobuf 文件的生成工具, 目前支持go, php, java, c#, object c 五种语言 ...

  6. HDU - 5534 Partial Tree(每种都装的完全背包)

    Partial Tree In mathematics, and more specifically in graph theory, a tree is an undirected graph in ...

  7. ACM-ICPC2018徐州网络赛 Features Track(二维map+01滚动)

    Features Track 31.32% 1000ms 262144K   Morgana is learning computer vision, and he likes cats, too. ...

  8. web测试与手机测试的区别

    1.web是B/S,移动端是C/S 2.系统的性能: B/S的优势是异地浏览和信息采集比较灵活性,随时随地只要能使用浏览器上网即可 但是客户端只能完成浏览,查询,数据输入等简单工作,绝大部分又服务器承 ...

  9. HDU 3410【单调栈】

    思路: 单调栈. 鄙人的记忆:按当前为最大值的两边延伸就是维护单调递减栈. //#include <bits/stdc++.h> #include <iostream> #in ...

  10. 洛谷P1831 杠杆数

    P1831 杠杆数 题目描述 如果把一个数的某一位当成支点,且左边的数字到这个点的力矩和等于右边的数字到这个点的力矩和,那么这个数就可以被叫成杠杆数. 比如4139就是杠杆数,把3当成支点,我们有这样 ...