Javascript formData和;选择多个";

Javascript formData和;选择多个";,javascript,jquery,html,ajax,forms,Javascript,Jquery,Html,Ajax,Forms,我正在尝试提交一个动态生成的表单,其中包含一个文件上传。 为此,我通过DB连接获取表单字段。一个字段可以允许多个选定选项。表单可以如下所示: <form> <input type="text" name="xyz"> </input> <input type="file" name="xyzfile"> </input> <select multiple name="..."> <option value="..."&

我正在尝试提交一个动态生成的表单,其中包含一个文件上传。 为此,我通过DB连接获取表单字段。一个字段可以允许多个选定选项。表单可以如下所示:

<form>
<input type="text" name="xyz"> </input>
<input type="file" name="xyzfile"> </input>
<select multiple name="...">
<option value="...">1</option>
<option value="...">2</option>
...
<option>x</option>
</select>
<select name="...">
<option value="...">1</option>
<option value="...">2</option>
</select>
当我检查metaForm对象时,所有选中的条目都具有selected=true属性。 在使用formData构造函数时,是否有一个选项我看不到,可以获取一个选择字段的所有选择项? 是否必须使用formData.append()手动执行此操作?如果是这样,如何确保在使用构造函数和append()时不会得到任何重复项


这有点令人困惑。

您可以在发布前序列化表单数据,如以下代码所示:

var formPostData  = $("#formID").serialize();

在这里,您只需在最后用
[]
命名您的
,并将其作为php脚本中的一个数组。您是对的!我没想到。你的评论其实就是答案,谢谢@凯伊多,尽管答案与另一个问题基本相同,但我不同意这个问题是完全重复的。另一个问题是关于复选框,这是关于多选;因为我想知道如何解决多重选择的问题,你在这个问题上的一句话回答比另一句话的答案对我更有帮助。如果你回答这个问题,我会非常高兴。(.
var formPostData  = $("#formID").serialize();