📜  如何在javascript中获取所有表单值(1)

📅  最后修改于: 2023-12-03 14:52:44.539000             🧑  作者: Mango

在 JavaScript 中获取所有表单值是一个常见的任务,特别是在需要对表单进行验证或提交时更是必要的。以下是几种获取表单值的方法:

使用 document.forms
const form = document.forms[0];

for (let i = 0; i < form.elements.length; i++) {
  console.log(form.elements[i].name, form.elements[i].value);
}

使用 document.forms 方法可以获取页面上的所有表单元素,通过遍历表单元素的 elements 属性获取表单元素的 namevalue 属性即可获得表单中的所有值。

使用 FormData
const form = document.forms[0];
const formData = new FormData(form);

for (const [key, value] of formData.entries()) {
  console.log(key, value);
}

使用 FormData() 构造函数可以将表单的所有数据转换为一个键值对的集合,并通过遍历这个集合获取表单元素的 namevalue 属性即可获得表单中的所有值。

使用 serialize 方法
const form = document.forms[0];
const formData = new FormData(form);
const data = new URLSearchParams([...formData.entries()]).toString();

console.log(data);

使用表单元素的 serialize() 方法可以将表单数据序列化为字符串,我们可以通过 URLSearchParams() 构造函数将序列化后的字符串解析为键值对的集合,最终获取表单中的所有值。

以上是几种获取表单值的方法,其中 document.formsFormData 方法是比较直接的方式,而 serialize() 则可以将表单值序列化为一个字符串,方便提交数据。