无法将 HTML 标签的数据复制到 JavaScript

Can not copy data of HTML tags to JavaScript

本文关键字:数据 复制 JavaScript 标签 HTML      更新时间:2023-09-26

出于某些原因,我正在尝试更改提交按钮的功能。我在将数据从 HTML 标签复制到 JS 时遇到问题。以下代码生成的警报打印的是"未定义",而不是标记中的数据。

<html>
  <body>
    <input class="inputtext" id="email" name="email" type="text"></div>
    <input value="Submit" name="v4l" id="login" class="inputsubmit" type="button" onclick="myFunction();return false">
    <script>    
      function myFunction() {
        var TestVar =document.getElementsByClassName('login').value;
        alert(TestVar);
      }
    </script>
  </body>
</html>

我知道这可以通过形式来完成,但我需要这种方式。

试试

var TestVar = document.getElementById('email').value
alert(TestVar);

这将获取文本字段的值

getElementsByClassName
          ^

看到那个s了吗?元素是复数getElementsByClassName返回一个NodeList(类似于Array(。

你必须从中选择一个索引(foo[0](或遍历它来获取值。


也就是说,您实际上没有任何元素是 login 类的成员,因此它将返回长度为零的节点列表。

你确实有一个带有id="login"的元素,所以也许你应该改用getElementById


从已为其硬编码值的元素中读取值似乎没有多大意义。您可能实际上想要使用document.getElementById('email')