formdata.append不能按预期工作,因此会覆盖而不是附加现有值

时间:2019-05-09 17:01:36

标签: javascript html-form form-data

根据MDN文档,“追加”会添加值,而“设置”会覆盖值;因此,以下代码理想上应该给我Chris&Chris1&Chris2;但是我得到Chris&

我的理解错了吗?如果是这样,获得Chris&Chris1&Chris2的正确方法是什么?

var formData = new FormData();
formData.append('username', 'Chris&');
formData.append('username', 'Chris1&');
formData.append('username', 'Chris2');
formData.get('username')

1 个答案:

答案 0 :(得分:1)

您需要使用getAll而不是get getAll documentation

var formData = new FormData();
formData.append('username', 'Chris&');
formData.append('username', 'Chris1&');
formData.append('username', 'Chris2');
formData.getAll('username')

formData.getAll('username')将返回一个数组(3) ["Chris&", "Chris1&", "Chris2"]


您可以继续并使用空字符串将其加入

formData.getAll('username').join('')获得预期的结果。


formData.getAll('username').join()将给您csv

Chris&,Chris1&,Chris2

相关问题