HTML onSubmit事件不返回元素怎么办?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (223)

我不能通过在表单上使用onSubmit事件获得输入文本,该怎么办?请指引我。这是密码。在这段代码中,我添加了一个输入元素和一个Submit元素。我想在提交表单后获得输入元素的值,但我不能。

<!DOCTYPE html>
<html lang="en">

<body>

    <form onsubmit="myfunction()">
        Text Input: <input type="text" id="tableInput">
        <input type="submit" value="get text input">
    </form>

</body>
<script>


function myfunction() {
      var num = document.getElementById("tableInput").value;
      alert(num);

    }
</script>

</html>
提问于
用户回答回答于

你需要修复你的选择器。 输入的id是“tableInput”,因此你需要将“tableInput”传递给getElementById

function myfunction() {
      var num = document.getElementById("tableInput").value;
      alert(num);
}

<!DOCTYPE html>
<html lang="en">

<body>

    <form onsubmit="myfunction()">
        Text Input: <input type="text" id="tableInput">
        <input type="submit" value="get text input">
    </form>

</body>
<script>


function myfunction() {
      var num = document.getElementById("tableInput").value;
      alert(num);
}
</script>

</html>

用户回答回答于

    function myfunction() {
          var id = document.getElementById("idOfTheField").value;
          var name = document.getElementById("cars").value;
          var t = document.getElementById("cars");
var selectedText = t.options[t.selectedIndex].text;
          alert('id is : ' + id + ' name is : ' + name + 'car : ' + selectedText);

     }
    <form onsubmit='myfunction()'>
    <label>id: </label><br>

    <input type='text' value='' id='idOfTheField' name='idField' /><br>

    <label>name: </label><br>

    <input type='text' value='' id='idOfTheNameField' name='nameField'/><br>
    <label>select a car : </label><br>
   <select name="cars" id='cars'>
    <option value="volvo">Volvo</option>
    <option value="saab">Saab</option>
    <option value="fiat">Fiat</option>
    <option value="audi">Audi</option>
  </select>

    <input type='submit' value='submit' />
    </form>

​问题是document.getElementById javascript方法产生字段的id。 所以你只需要提供id。 id ='thisIsID'然后id是thisIsID ..

在我的回答中显示了你应该如何用jquery做到这一点

希望这可以帮助

function myfunction() {
      let num = $('#tableInput').val();
      alert(num);

    }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<html lang="en">

<body>

    <form onsubmit="myfunction()">
        Text Input: <input type="text" id="tableInput">
        <input type="submit" value="get text input">
    </form>

</body>


</html>

扫码关注云+社区

领取腾讯云代金券