使用base64對圖片的二進制進行編碼并用ajax進行顯示
使用base64對圖片的二進制進行編碼并用ajax進行顯示
有時候我們需要動態(tài)的將圖片的二進制在頁面上進行顯示,如我們需要弄一個驗證碼的功能,那么如果我們的驗證碼的圖片在后臺得到的是該圖片的二進制,那么當我們需要在頁面上點擊一個按鈕利用ajax進行切換的時候,如果在后臺直接返回的是該圖片的二進制,那么該圖片是無法進行顯示的。
直接返回字節(jié)流給img標簽的src是可以的,如<img src="servlet/CheckCode">,但在之后進行切換的時候使用ajax請求,如果僅僅返回圖片的二進制然后把它傳給img的src是不能的,目前的方法是把圖片的二進制進行base64編碼,
然后在頁面上以下列方式進行顯示,<img src="data:image/jpeg;base64,result">,其中的result是經(jīng)過base64編碼后的內(nèi)容,這樣就可以使用后臺直接利用圖片的二進制進行圖片的顯示了
實例代碼:
<!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是經(jīng)過base64編碼后的內(nèi)容
$("img").attr("src","data:image/jpeg;base64,"+data);
});
});
});
function init() {
$.post("servlet/CheckCode",{},function(data) {
//其實在第一次運行的時候是可以直接將圖片的二進制作為Image的src進行顯示的,但是因為后臺統(tǒng)一返回的是
//經(jīng)過base64編碼過后的內(nèi)容,所以這里初始顯示的時候也是利用base64的方法
$("img").attr("src","data:image/jpeg;base64,"+data);
});
}
</script>
</head>
<body>
<img alt="" width=100 >
<input type="button" value="換一張"/>
</body>
</html>
- Ajax上傳實現(xiàn)根據(jù)服務(wù)器端返回數(shù)據(jù)進行js處理的方法
- JavaScript將base64圖片轉(zhuǎn)換成formData并通過AJAX提交的實現(xiàn)方法
- 借助FileReader實現(xiàn)將文件編碼為Base64后通過AJAX上傳
- Jquery ajaxsubmit上傳圖片實現(xiàn)代碼
- php+ajax實現(xiàn)圖片文件上傳功能實例
- jquery的ajaxSubmit()異步上傳圖片并保存表單數(shù)據(jù)演示代碼
- 自己動手打造ajax圖片上傳(網(wǎng)上沒有的)
- php ajax無刷新上傳圖片實例代碼
- PHP+jQuery+Ajax實現(xiàn)多圖片上傳效果
- H5移動開發(fā)Ajax上傳多張Base64格式圖片到服務(wù)器
相關(guān)文章
JS事件循環(huán)-微任務(wù)-宏任務(wù)(原理講解+面試題分析)
這篇文章主要介紹了JS事件循環(huán)-微任務(wù)-宏任務(wù)的原理,本文章含有面試題分析,不管是面試者還是想要學習相關(guān)內(nèi)容的都可以很好的理解、掌握這部分內(nèi)容,需要的朋友可以參考下2023-01-01
HTA版JSMin(省略修飾語若干)基于javascript語言編寫
JSMin是一種很有用的ECMAScript代碼減肥工具,雖然它只是一種較為初級的工具,但用它來對付我自己編寫的大部分ECMAScript代碼效果都很不錯,而且在我這里也從未發(fā)生過減肥后代碼出錯之類的問題。2009-12-12
JavaScript this調(diào)用規(guī)則說明
我希望通過這些來使你們理解各種函數(shù)調(diào)用方式的不同,讓你的JavaScript代碼遠離bugs。2010-03-03
js addDqmForPP給標簽內(nèi)屬性值加上雙引號的函數(shù)
這篇文章主要介紹了js addDqmForPP給標簽內(nèi)屬性值加上雙引號的函數(shù),需要的朋友可以參考下2016-12-12

