我正在为发票上的[id]生成二维码。
现在我在每个地方都有一个javascript,可以运行qr代码并生成代码。
<script type="text/javascript">
function makeCode (data,width) {
var qrcode = new QRCode(document.getElementById(data), {
width : width,
height : width
});
var length = (data).length;
if (length===10) {qrcode.makeCode("10" + data);}
else {qrcode.makeCode(data);}
}
</script>
<div id="[id]"></div><script>makeCode("[id]","50")</script>
我必须使用[id]作为&#34; id&#34; div是我获得该项目的唯一动态内容。
问题在于,当我有多个具有相同[id]的项目时,javascript当然会将所有QR码堆叠到具有该ID的第一个<div>
中。
有没有办法让javascript知道它是从第三个DIV(作为示例)运行,然后将代码放入第三个DIV,而不是第一个。
我知道你不应该有多个具有相同ID元素的div。这个问题的一部分,我试图让它们与众不同,但我不知道如何。
我添加了一个jfiddle,因此您可以更清楚地看到问题。
答案 0 :(得分:0)
如上所述,您当前网站逻辑中的一些内容需要调整为更具动态性。
首先,应该有一个代表购物车的table
,并且在该购物车内,您可以拥有多个rows
项用于生成QRcode。每个相同的id
都可以有一个索引标志1..2..3 ..
我已经演示了如何通过更改html结构来修复问题。
让我知道你的想法。