【发布时间】:2013-07-04 19:04:31
【问题描述】:
在一个表单中,我有 2 个 <select multiple> 元素。第一个在服务器端填充了<option> itens。
然后我开发了一个 JavaScript 代码来将元素从一个移动到另一个。这是一个基本的多选功能。
现在我必须在提交表单时将第二个选择的值发送回服务器。但它只发送被选中的项目。这不是我需要的行为,我希望发送所有现有的项目。知道如何实现它,最好不使用 Ajax?
【问题讨论】:
-
添加一个
submit处理程序,将第二个<select>中的所有选项标记为selected。 -
这个解决方案的问题是如果用户回到那个页面,他可能会看到那些itens被选中。
-
另一种选择是使用隐藏字段来保存第二次选择的选项。
-
嗯,这是个好主意,为每个值创建新字段!
-
我同意巴马尔的观点。添加一个名为“chosenOptions”之类的隐藏字段。添加一些 javascript,以便在选择项目时将其添加到隐藏字段中(使用分隔符),反之亦然。
标签: javascript html forms select multi-select