javascript - 单击按钮时检查输入值

标签 javascript jquery html

我试图在按下按钮时检查输入中是否包含任何内容。它似乎只是在第一次加载网站时检查该值。即使一次又一次按下按钮,它也不会检测到输入中输入的任何值。我通过将输入值设置为默认值对此进行了测试,这给了我成功。我很困惑为什么会发生这种情况。

HTML:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>test</title>
  </head>
  <body>
    <label>Goals:</label>
    <input type="text" class="input-box" id="goals" />
    <input
      type="button"
      name="submit"
      value="Submit"
      class="button"
      id="submit"
    />
  </body>
  <script
    src="https://code.jquery.com/jquery-3.4.1.js"
    integrity="sha256-WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU="
    crossorigin="anonymous"
  ></script>
  <script src="./app.js"></script>
</html>

JavaScript:

// Gather Inputs
let goals = document.getElementById("goals").value;
console.log("goals");
$("#submit").click(function() {
  // Check Goals Input
  if (goals === "") {
    console.log("fail");
  } else {
    window.print();
  }
});

最佳答案

您需要在 click() 函数中收集输入。

$("#submit").click(function() {
  // Gather Inputs
  let goals = document.getElementById("goals").value;
  console.log("goals");
  // Check Goals Input
  if (goals === "") {
    console.log("fail");
  } else {
    window.print();
  }
});

关于javascript - 单击按钮时检查输入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58773765/

相关文章:

javascript - jQuery 触发事件随着时间的推移而堆栈

javascript - Safari 不触发表单提交

javascript - 使用 Shadow DOM 增强 SVG 标签

html - 如何修复悬停时的渐变过渡

javascript - 如何使用 for 循环向 Chart.js 添加数据

javascript - JS : Add +1 to variable when check 1 of checkboxes in a group (show tooltip)

javascript - typescript Electron 渲染器进程不工作

javascript - jQuery 在 AJAX 请求中使用回调中断循环

php - 变量未传递到 cakephp 中查看

javascript - 如何在jquery中检测F5刷新按键事件?