首页 > 解决方案 > 使用按键提交布尔按钮的代码

问题描述

我试图让我的代码提交一个带有两个选项的布尔按钮。我正在尝试触发 S 和 K 按键来提交每个按钮。我看到了下面的代码,但是当我尝试它时,它没有运行。

这是我的 HTML 代码。每个按钮都有一个功能,可以为我提供点击时间戳、提交页面并保存参与者选择的选项(A 或 B)。

<!DOCTYPE html>
    <html>
    <body>

    <p style="text-align: center;">
     <button class="btn btn-primary btn-large" 
    onclick="myFunction()" name="offer_accepted1" id="of1A" value="True">&nbsp;A</button> 
     <button class="btn btn-primary btn-large"
    onclick="myFunction()" name="offer_accepted1" id="of1B" value="False">B</button>
    </p>
    <input type="hidden" name="timestamp1" value="0" />
    {{ form.timestamp1.errors }}

     <input type="text" id="c1" name="c1" value="0" />
     {{ form.c1.errors }}
<!--The keypress code-->

     <script>
    var input = document.getElementById("of1A");
    input.addEventListener("keyup", function(event) {
       if (event.keyCode === 75) {
     event.preventDefault();
    document.getElementById("of1A").click();
    });

    var input = document.getElementById("of1B");
    input.addEventListener("keyup", function(event) {
      if (event.keyCode === 83) {
       event.preventDefault();
       document.getElementById("of1B").click();
      }
    });


//The function that gives me a timestamp

function myFunction() {
  var n = Date.now();
  document.getElementById("c1").value = n;
    }

    </script>

</body>

如果没有按键代码,代码将以以下方式运行:

function myFunction() {
  var n = Date.now();
  document.getElementById("c1").value = n;
}
<p style="text-align: center;">
  <button class="btn btn-primary btn-large" 
    onclick="myFunction()" name="offer_accepted1" value="True">&nbsp;A</button> 
  <button class="btn btn-primary btn-large"
    onclick="myFunction()" name="offer_accepted1" value="False">B</button>
</p>
<input type="hidden" name="timestamp1" value="0" />
{{ form.timestamp1.errors }}

<input type="text" id="c1" name="c1" value="0" />
{{ form.c1.errors }}

标签: javascripthtml

解决方案


推荐阅读