0

我正在尝试将两个表单合并在一起,以便我可以在一个 POST 中提交两个数据。我不想进行 AJAX 调用,否则我会使用序列化。我正在使用以下 JQuery 来合并表单...

$('#formA :input').clone().hide().appendTo('#formB');

但是,我的选择输入的选定索引不会被复制,而是简单地设置为第一个选项。我对 JQuery 不是很精通,所以我不知道如何复制选定的值。

4

2 回答 2

0

在没有看到您的完整代码的情况下,传输所选索引将类似于...

$("#formB :input).find(':selected').val($('#formA :input').find(':selected').val());

尽管有更好的方法可以做到这一点。如果用户不打算与#formB 上的下拉菜单进行交互,您只需添加一个字段即可。

于 2013-10-18T08:27:53.040 回答
0
var indexes = [];

$('form select').each(function(k,v) {
   indexes.push ($(this).find('option').filter(':selected').index())
});


$('form#two')
    .append($('form#one :input').clone())        
    .find('select')
    .each(function(k,v) {
        $(this).find('option').eq(indexes[k]).attr('selected','selected')            
    })

http://jsfiddle.net/HbK2c/

于 2013-10-18T08:40:43.303 回答