You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用jquery.qrcode.min.js生成JSON二维码仅显示ID的问题求助

问题解决方法

你的代码存在两个关键错误,导致二维码仅显示id值:

  1. 变量定义位置错误:将URL参数解析的代码放在了qrcode()的配置对象内部,属于语法错误,浏览器无法正确执行后续逻辑,仅id相关代码被意外解析。
  2. JSON内容构建错误:错误混合对象字面量与字符串拼接语法,生成的myJSON并非完整JSON字符串,而是语法混乱的对象。

修正后的完整代码如下:

// 先解析URL参数,放在qrcode调用之外
const queryString = window.location.search;
const urlParams = new URLSearchParams(queryString);

const id = urlParams.get('id') || '';
const tableid = urlParams.get('tableid') || '';
const areacode = urlParams.get('areacode') || '';
const catid = urlParams.get('catid') || '';

// 创建对象后转成JSON字符串(推荐,避免拼接错误)
const myJSON = JSON.stringify({
  id: id,
  tableid: tableid,
  areacode: areacode,
  catid: catid
});

// 调用qrcode生成二维码
jQuery('#output').qrcode({
  minVersion: 1,
  maxVersion: 40,
  ecLevel: 'Q',
  left: 0,
  top: 0,
  size: 500,
  fill: '#000',
  radius: 0,
  quiet: 0,
  text: myJSON
});

关键说明:

  • 把参数解析逻辑移到qrcode()方法外部,确保所有参数被正确获取。
  • 使用JSON.stringify()将JS对象转为标准JSON字符串,避免手动拼接时的引号、格式错误。
  • 给参数添加|| ''兜底处理,避免参数不存在时调用toString()报错。

内容的提问来源于stack exchange,提问作者user25271508

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 06:45:16