如何在FormData中获取多个复选框值



我的html表单有多个具有相同name属性的复选框:

<form id='cheese-selector'>
<input type="checkbox" name="cheese" id="limburger" value="Limburger">Limburger</input>
<input type="checkbox" name="cheese" id="camembert" value="Camembert">Camembert</input>
<input type="checkbox" name="cheese" id="roquefort" value="Roquefort">Roquefort</input>
<input type="submit" id="pick-cheese">Pick My Cheese!</input>
</form>

我通过ajax提交。当我创建FormData对象时,即使我选中了多个复选框,也只包括第一个选中的复选框:

$('#limburger').click()
$('#camembert').click()
console.log(FormData(this).get('cheese'))
// 'Limburger'

如何使FormData将所有检查值编码为数组?

参见MDN:

FormData接口的get((方法从FormData对象中返回与给定键关联的第一个值。如果需要多个值,并且需要所有值,请改用getAll((方法。

最新更新