似乎无法获取此输入字段的值。怎么了?

Cannot seem to get the value of this input field. What is wrong?

每当我在浏览器中 运行 此代码时,当我单击其中一个按钮时,我似乎无法获得显示值的警报。它只是说未定义。但我不明白我在这里做错了什么。

代码如下:

<body>   
  <h1>Optelmachine in Javascript</h1>
     <form id="calculator">
        <textarea name="field" id="field" cols="32" rows="3"></textarea>
        <br> <br>
        <input  type="button"   class="waarde"  name="waarde"   value="1"  onclick="getInputValue()">
        <input  type="button"   class="waarde"  name="waarde"   value="2"  onclick="getInputValue()">
        <input  type="button"   class="waarde"  name="waarde"   value="3"  onclick="getInputValue()"><br> <br>
        <input  type="button"   class="waarde"  name="waarde"   value="4"  onclick="getInputValue()">
        <input  type="button"   class="waarde"  name="waarde"   value="5"  onclick="getInputValue()">
        <input  type="button"   class="waarde"  name="waarde"   value="6"  onclick="getInputValue()"><br> <br>
        <input  type="button"   class="waarde"  name="waarde"   value="7"  onclick="getInputValue()">
        <input  type="button"   class="waarde"  name="waarde"   value="8"  onclick="getInputValue()">
        <input  type="button"   class="waarde"  name="waarde"   value="9"  onclick="getInputValue()"><br> <br>
        <input  type="button"   class="waarde"  name="waarde"   value="0"  onclick="getInputValue()">
        <input  type="button"  class="waarde1" name="reset"    value="Clear" onclick="addition()">
     </form>
     <script>
        function getInputValue() {
           var inputVal = document.getElementsByName("waarde").value;
           alert(inputVal);
        }
  </script>

getElementsByName() 函数returns一组元素,而不仅仅是一个元素。要获取输入字段的值,您需要指定索引,例如

var inputVal = document.getElementsByName("waarde")[0].value;

试试这个

<input  type="button"   class="waarde"  name="waarde"   value="0"  onclick="getInputValue(event)">
     </form>
     <script>
        function getInputValue(event) {
           let inputVal = event.target.value
           alert(inputVal);
        }

前提是您希望获得 onClick 的值

    function getInputValue() {
       var inputVal = this.value;
       alert(inputVal);
    }

试试这个。这将提醒单击按钮的值。

getElementsByName returns 元素集合,而不是单个元素。 您必须知道单击了哪个元素。 在您的输入中使用 onclick="getInputValue(event) 并在您的函数中使用 event.target.value 获取值。