使用base64对图片的二进制进行编码并用ajax进行显示


Posted in Javascript onJanuary 03, 2017

使用base64对图片的二进制进行编码并用ajax进行显示

有时候我们需要动态的将图片的二进制在页面上进行显示,如我们需要弄一个验证码的功能,那么如果我们的验证码的图片在后台得到的是该图片的二进制,那么当我们需要在页面上点击一个按钮利用ajax进行切换的时候,如果在后台直接返回的是该图片的二进制,那么该图片是无法进行显示的。

直接返回字节流给img标签的src是可以的,如<img src="servlet/CheckCode">,但在之后进行切换的时候使用ajax请求,如果仅仅返回图片的二进制然后把它传给img的src是不能的,目前的方法是把图片的二进制进行base64编码,

然后在页面上以下列方式进行显示,<img src="data:image/jpeg;base64,result">,其中的result是经过base64编码后的内容,这样就可以使用后台直接利用图片的二进制进行图片的显示了

实例代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
  <title>code.html</title>
 
  <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
  <meta http-equiv="description" content="this is my page">
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  
  <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
  <script type="text/javascript" src="js/jquery.js"></script>
  <script type="text/javascript">
   $(function() {
   
   init();
   
   $("[type='button']").click(function() {
    $.post("servlet/CheckCode",{},function(data) {
    //注意这里src的写法,data是经过base64编码后的内容
    $("img").attr("src","data:image/jpeg;base64,"+data);
    });
   });
   
   });
   function init() {
   $.post("servlet/CheckCode",{},function(data) {
    //其实在第一次运行的时候是可以直接将图片的二进制作为Image的src进行显示的,但是因为后台统一返回的是
    //经过base64编码过后的内容,所以这里初始显示的时候也是利用base64的方法
    $("img").attr("src","data:image/jpeg;base64,"+data);
   });
   }
  </script>

 </head>
 
 <body>
  <img alt="" width=100 >
  <input type="button" value="换一张"/>
 </body>
</html>
Javascript 相关文章推荐
jquery实现的可隐藏重现的靠边悬浮层实例代码
May 27 Javascript
jQuery之排序组件的深入解析
Jun 19 Javascript
jquery数组之存放checkbox全选值示例代码
Dec 20 Javascript
js实现的牛顿摆效果
Mar 31 Javascript
jQuery自定义元素右键点击事件(实现案例)
Apr 28 jQuery
node.js 中间件express-session使用详解
May 20 Javascript
element ui里dialog关闭后清除验证条件方法
Feb 26 Javascript
详解webpack 入门与解析
Apr 09 Javascript
使用gulp构建前端自动化的方法示例
Dec 25 Javascript
js计算最大公约数和最小公倍数代码实例
Sep 11 Javascript
原生js实现点击轮播切换图片
Feb 11 Javascript
详解JavaScript中的数据类型,以及检测数据类型的方法
Sep 17 Javascript
BootStrap学习笔记之nav导航栏和面包屑导航
Jan 03 #Javascript
原生JS实现在线问卷调查投票特效
Jan 03 #Javascript
详解angular中如何监控dom渲染完毕
Jan 03 #Javascript
Node.js学习入门
Jan 03 #Javascript
通过AngularJS实现图片上传及缩略图展示示例
Jan 03 #Javascript
DWR3 访问WEB元素的两种方法实例详解
Jan 03 #Javascript
BootStrap学习系列之布局组件(下拉,按钮组[toolbar],上拉)
Jan 03 #Javascript
You might like
为了这两部电子管收音机,买了6套全新电子管和10粒刻度盘灯泡
2021/03/02 无线电
Symfony2学习笔记之插件格式分析
2016/03/17 PHP
PHP聊天室简单实现方法详解
2018/12/08 PHP
js字符串的各种格式的转换 ToString,Format
2011/08/08 Javascript
Jquery easyui 下loaing效果示例代码
2013/08/12 Javascript
通过url查找a元素应用案例
2014/04/29 Javascript
jQuery中data()方法用法实例
2014/12/27 Javascript
Javascript基础教程之比较操作符
2015/01/18 Javascript
javascript遇到html5的一些表单属性
2015/07/05 Javascript
js实现拖拽效果(构造函数)
2015/12/14 Javascript
JavaScript中的闭包
2016/02/24 Javascript
Node.js下自定义错误类型详解
2016/10/17 Javascript
JavaScript中object和Object的区别(详解)
2017/02/27 Javascript
Vue.js仿微信聊天窗口展示组件功能
2017/08/11 Javascript
vue源码入口文件分析(推荐)
2018/01/30 Javascript
详解基于Vue2.0实现的移动端弹窗(Alert, Confirm, Toast)组件
2018/08/02 Javascript
JavaScript中创建原子的方法总结
2018/08/26 Javascript
在NPM发布自己造的轮子的方法步骤
2019/03/09 Javascript
Vue.js项目实战之多语种网站的功能实现(租车)
2019/08/07 Javascript
[03:22]DSPL第一期精彩集锦:酷炫到底!
2014/11/07 DOTA
利用Python画ROC曲线和AUC值计算
2016/09/19 Python
Python中执行存储过程及获取存储过程返回值的方法
2017/10/07 Python
python的一些加密方法及python 加密模块
2019/07/11 Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
2020/04/07 Python
python中的django是做什么的
2020/07/31 Python
css3制作彩色边线3d立体按钮的示例(css3按钮)
2014/05/06 HTML / CSS
阿里健康大药房:阿里自营网上药店
2017/08/01 全球购物
戴尔新加坡官网:Dell Singapore
2020/12/13 全球购物
中专自荐信
2013/10/13 职场文书
演讲稿的写法
2014/05/19 职场文书
北京故宫导游词
2015/01/31 职场文书
淘宝文案策划岗位职责
2015/04/14 职场文书
乡镇团委工作总结2015
2015/05/26 职场文书
导游词之山东红叶谷
2019/10/31 职场文书
常用的文件对应的MIME类型汇总
2022/04/26 HTML / CSS
SpringBoot详解整合Redis缓存方法
2022/07/15 Java/Android