PHP建站技术分享-从入门到精通PHP建站技术分享-从入门到精通PHP建站技术分享-从入门到精通

QQ:420220301 微信/手机:150-3210-7690
当前位置:首页 > CMS教程 > Fastadmin

让表格中显示二维码浮窗

管理员 2024-12-14
Fastadmin
8


先看效果

开始整活,先找个处理二维码的js类
https://www.runoob.com/w3cnote/javascript-qrcodejs-library.html
嗯~ 不错正好适合我这种菜鸟

下载好的js提取出来到 public/assets/js

requireJS加载模块里声明一下 public/assets/js/require-backend.js

   paths: {        'qrcode':'qrcode.min',

到所属的表格js里添加上我们的QRcode

define([XXXXXX,'qrcode'],    function (XXXXX, undefined) {

在最后的一个api里添加一个渲染方法formatter里添加一个qrcode

api: {     formatter: {//渲染的方法         qrcode: function (value, row, index) {

现在我们找一个参数引用这个渲染方法

以下操作都在这个方法内操作

{field: 'uuid', title: __('二维码'), operate: false, formatter:Controller.api.formatter.qrcode}

目标是一个按钮放上去就显示二维码 先整个按钮

 return '<a class="label bg-green"> 显示二维码 </a>';

image.png
嗯~ 真好看 我真聪明

解析来我们让他有个浮窗

return '<a class="label bg-green"  data-toggle="tooltip" data-original-title="<a>世界属于三体!</a>" data-html="true"> 显示二维码 </a>';        

image.png
看起来还不错 那就这里面加入我们需要的二维码吧

看了一下文档 这个二维码需要一个对象。这样 我们先去 html的模版里给他加一个对象

<div id="QRcode"></div>

我们回到js里 在前面加上初始化 默认太大了我们让二维码小一点

define([XXXXXX,'qrcode'],    function (XXXXX, undefined) {       var QR = new QRCode(document.getElementById("QRcode"),{            text: "https://mymoyi.cn",            width: 128,            height: 128        });  

现在我们回到formatter.qrcode里面
这里悬浮 tooltip 鼠标走开就没了 改用了弹窗 popover

 // 设置URLlet url = location.origin + '/h5/#/?id=' + value;// 绘制QR.clear();QR.makeCode(url);// 获取图片let img = $("#QRcode").prop("outerHTML");// 拼接return '<a class="qrcode label bg-green"  data-toggle="popover" data-title="请打开扫描二维码" data-html="true" data-content=''+img + ''> 显示二维码 </a>';

image.png

棒棒哒~ 有点小bug 第一次点击打开的时候位置不对 不过不影响使用


希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, Fastadmin, ClassCMS, LeCMS, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。

相关推荐

扫码关注

qrcode

QQ交谈

回顶部