即使对于非空表单,FormData对象也返回空

时间:2016-04-21 03:08:08

标签: javascript form-data

对于具有2个输入字段的表单,

FormData对象为空。 formData.getAll()记录错误TypeError: Not enough arguments to FormData.getAll.。 这是我的代码:

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>Document</title>

    <script>
      function test () {
        var element = document.getElementById("invite-form");
        console.log(element);
        var formdata = new FormData(element)
        console.log(formdata.getAll());
      }
    </script>

  </head>
  <body>

    <form id="invite-form" method='POST' action=''>
      <label for="email">Email...</label>
      <input type="text" name="email" value="human@earth.com"/>
      <input type="hidden" name="csrf_token" value="random" />
      <button class="btn" onclick="test()">Button</button>
    </form>

  </body>
</html>

我尝试使用单击按钮

时表单中的值填充FormData对象

1 个答案:

答案 0 :(得分:5)

FormData接口的getAll()方法需要给出一个密钥 然后,它从FormData对象中返回与该键关联的所有值。

function test () {
    var element = document.getElementById("invite-form");
    console.log(element);
    var formdata = new FormData(element)
    console.log(formdata.getAll('email')); // <- needs key
}