Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试为QRcode Javascript生成随机数_Javascript_Html_Qr Code - Fatal编程技术网

尝试为QRcode Javascript生成随机数

尝试为QRcode Javascript生成随机数,javascript,html,qr-code,Javascript,Html,Qr Code,我正在尝试使用qrcodeapi网站()生成QRcode。为了生成一个随机QRcode,我需要一个随机数,现在这就是我所拥有的: <!DOCTYPE html> <html> <body> <button onclick="myFunction()">Gerar QRcode</button> <p id="demo"></p> <script> function myFunction() { v

我正在尝试使用qrcodeapi网站()生成QRcode。为了生成一个随机QRcode,我需要一个随机数,现在这就是我所拥有的:

<!DOCTYPE html>
<html>
<body>
<button onclick="myFunction()">Gerar QRcode</button>

<p id="demo"></p>

<script>
function myFunction() {
var x = Math.floor((Math.random() * 99) + 1);
document.getElementById("demo").innerHTML = x;
}
</script>
<img src = "https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=demo">
</body>
</html>

杰拉尔QR码

函数myFunction(){ var x=数学地板((数学随机()*99)+1); document.getElementById(“demo”).innerHTML=x; }
它生成一个随机数,但没有到达它应该在的位置(在这里的data=number之后

有人能帮我吗?或者引导我找到做我想做的事情的最佳方式


编辑:当我按下按钮“Gerar QRcode”时,我想要一个新的QRcode

一种解决方案是从脚本生成url

<script>
  function myFunction() {   
    var url = "https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=";
    var x = Math.floor((Math.random() * 99) + 1);
    url = url + x;
    document.getElementById("demo").src = url;
  }
</script>
<img id="demo" src="">
</body>
</html>

函数myFunction(){
变量url=”https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=";
var x=数学地板((数学随机()*99)+1);
url=url+x;
document.getElementById(“demo”).src=url;
}

由于您已经在使用内联脚本,以下可能是合适的:

<script>
var x = Math.floor((Math.random() * 99) + 1);
document.write("<img src='https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=" + x + "'>")
</script>

如果您只是想让它在测试API时工作,那么这应该没问题。否则,请阅读一些关于清理代码的内容。此外,在javascript中创建img标记,然后将其插入页面可能是一个更干净、更长期的解决方案

根据api文档,QR代码是您请求的数据字段的内容,因此,如果您在浏览器中访问url,您将看到内容为“demo”的QR代码

您需要做的是将随机数连接到图像源中的同一字段中

这样就足够了:

<script>
function myFunction() {
var x = Math.floor((Math.random() * 99) + 1);
document.getElementById("demo").src = document.getElementById("demo").src + x;
}
</script>

<img id="demo" src="https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=">

函数myFunction(){
var x=数学地板((数学随机()*99)+1);
document.getElementById(“demo”).src=document.getElementById(“demo”).src+x;
}

这听起来好像真的需要在服务器端创建,使用API如何?我正在与Dreamfactory合作,现在我只想生成随机数,看看它是否有效,但将来我会将它添加到我的数据库中。
document.getElementById(“randomQR”).src=”https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=“+x)这一个工作正常,但我希望在按下按钮时显示新代码,而不是在更新页面时。非常感谢你的帮助。丹尼尔,你是个救命恩人!非常感谢,它工作得很好。将来我想把它们分开,因为现在我只想让它继续!!你能简单地解释一下为什么最后会出现newQR()吗?我在没有它的情况下进行了测试,它仍然在工作。谢谢。很高兴它对你有用!末尾的
newQR()
是可选的。如果函数末尾没有
newQR()
调用,页面将加载一个损坏的图像,并一直保持这种状态,直到单击按钮为止
newQR()
仅在页面加载时调用该函数。
<!DOCTYPE html>
<html>
  <body>
    <img id='qrcode' src=''>
    <button onclick="newQR()">Gerar QRcode</button>
    <script>
      function newQR() {
        var x = Math.floor((Math.random() * 99) + 1);
        document.getElementById('qrcode').src = "https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=" + x
      }
      newQR()
    </script>
  </body>
</html>
<script>
function myFunction() {
var x = Math.floor((Math.random() * 99) + 1);
document.getElementById("demo").src = document.getElementById("demo").src + x;
}
</script>

<img id="demo" src="https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=">