背景不是理解问题所必需的,而是我正在尝试做的基本想法:我有一个表单,其中包含可以再次展开、编辑和折叠的各个部分,表单字段的状态是每次都记得。我想为用户提供“取消”更改的能力 - 如果用户展开一个部分并进行更改,但随后决定恢复到表单部分以前的状态(在他展开之前),他们可以单击“取消”和字段将全部还原。(这本质上是一个“撤消”/回滚按钮。)我通过在展开时使用 jQueryclone
克隆表单部分来实现这一点,如果用户点击“取消”,我用原始克隆替换更新的表单部分。
问题是用户的“选择”元素选择似乎没有包含在克隆中。我已经构建了一个基本的jsfiddle来演示这一点 - 如果您尝试在任一部分中选择某些内容然后克隆它,它会在没有选择的情况下被克隆。
有没有办法绕过这个限制?我应该使用另一种方法而不是clone
吗?
我假设我可以手动编写一个循环来复制所有选择的所有选定值,但这很麻烦。有没有更流畅的方法来处理这个问题?