将QR码值扫描到输入字段

时间:2018-01-25 00:41:23

标签: javascript jquery

这是我正在使用的扫描仪......

在网上:https://atandrastoth.co.uk/main/pages/plugins/webcodecamjs/

On Git:https://github.com/andrastoth/WebCodeCamJS

它正在100%工作。但我需要添加一些自定义额外的。

扫描QR码时,会将我的结果输出到此段落标记中。

<p id="scanned-QR"> The scanned code text value is printed out here </p>

但是我需要它作为输入字段,所以我可以在URL中使用它的值。

如何设置输入字段等于提交给Paragraph代码的值?

我尝试过这些方法而且失败了:

方法1

<input id="scanned-QR"> The scanned code text value is printed out here </input>

方法2

<p id="scanned-QR" onchange="update"></p>
 <input id="code_id_value" type="text" name="" value="">
<br>

<script>
 function update(){
  var code_id_value = document.getElementById("scanned-QR").innertext;
  document.getElementById("code_id_value").value = code_id_value;
 }
</script>

2 个答案:

答案 0 :(得分:0)

您错过的关键是T中的.innertext需要大写( .innerText )。

除此之外,使用内联事件处理程序是不好的做法,您应该考虑使用.addEventListener()而不是 onchange

可以看到以下工作:

&#13;
&#13;
document.getElementById("scanned-QR").addEventListener("click", update);

function update() {
  var code_id_value = document.getElementById("scanned-QR").innerText;
  document.getElementById("code_id_value").value = code_id_value;
}

// Demo
update();
&#13;
<p id="scanned-QR">Text</p>
<input id="code_id_value" type="text" name="" value="">
&#13;
&#13;
&#13;

希望这有帮助! :)

答案 1 :(得分:0)

所以这就是我提出的解决方案。

这是我的段落和输入功能

<p id="scanned-QR" onchange="update">SCAN.BZ</p>
<input id="code_id_value" type="text" name="" value="">

这是我的功能。每隔毫秒或更快的间隔“我认为它是每毫秒”。

它运行顺畅,不会滞后。结果几乎是立竿见影的。

<script type="text/javascript">
 setInterval(update,1);
   function update() {
      var code_id_value = document.getElementById("scanned-QR").innerHTML;
      document.getElementById("code_id_value").value = code_id_value;
    }
    update();
</script>

感谢帮助“黑曜石时代”真的很感激。 :)