jQuery中的qrcode可以根据相关的内容生成二维码,这种开发已经早就渗透到我们生活当中,在jQuery中如何使用qrcode进行开发呐?
1、引入jQuery中的qrcode插件。
<script type="text/javascript" src="query-1.9.1.min.js"></script> <script type="text/javascript" src="jquery.qrcode.min.js"></script>
2、写一个存放二维码的位置:
<style> .align-center{ width:250px; margin:0 auto; } </style>
<div id="qrcode" class="align-center"></div>
3、调用qrcode生成相关的二维码:
<script type="text/javascript"> jQuery('#qrcode').qrcode({ width: 250,height: 250,correctLevel:0,text: "ABCDEFG" });
如果是java后台传过来的数据:
text: "${signB}"
其中signB是后台传过来的数据(英文字符)。
注意1:以上为后台英文字符的传输,中文不能识别,因为 jquery-qrcode是采用charCodeAt()方式进行编码转换的。
所以中文字符就需要将字符串转换成UTF-8,然后再生成二维码。
转为utf-8的方法:(这是复制过来的)
function toUtf8(str) { var out, i, len, c; out = ""; len = str.length; for(i = 0; i < len; i++) { c = str.charCodeAt(i); if ((c >= 0x0001) && (c <= 0x007F)) { out += str.charAt(i); } else if (c > 0x07FF) { out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F)); out += String.fromCharCode(0x80 | ((c >> 6) & 0x3F)); out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F)); } else { out += String.fromCharCode(0xC0 | ((c >> 6) & 0x1F)); out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F)); } } return out; }
应用:
var str = toUtf8("生成的二维码中带有中文字符测试测试测试"); $('#code').qrcode(str);