我有一个包含很多字段的表单(输入文本和下拉列表),我想将一些字段克隆到其他字段上。这些字段是数据库填充和动态填充的组合。
jquery clone()可以很好地克隆在页面加载时预先填充的内容,但对于任何即时用户输入都没有。我找到了适合我的领域的解决方案:
$('div.myStuffToCopy').find('input:text').each(function() {
$(this).attr('value', $(this).val());
});
newDiv = $('div.myStuffToCopy').clone(true);
“myStuffToCopy”代表这里包含我要复制的内容的div。
经过对下拉列表问题的大量研究后,我找不到有效的解决方案。 https://github.com/spencertipping/jquery.fix.clone处的修复,似乎是接受的答案,没有任何区别(因为我的下拉列表是在页面加载时预先填充的时候正确克隆的)。有没有办法和输入字段一样做?
编辑:这是一个jsfiddle,看看我想要实现的目标:如果您修改第一行字段并单击“复制”链接,您将看到2个输入被复制(感谢顶部的少数JS线路但不是下拉列表。
EDIT2:我找到了一种方法让它现在正常工作(here),但奇怪的是下拉列表选择了正确的值,但它没有显示在屏幕上(在chrome和firefox上) ) - 只有在提交表单时,POST值才会显示正确。如何强制下拉列表显示真实值?