Подтвердить что ты не робот

Выбор jquery clone не поддерживает значение

Я пытаюсь клонировать feildset, затем отправляю содержимое входов и выбирает с помощью сериализации. Он работает правильно, но выбор не сохраняет его значения. Я попробовал несколько методов, которые я нашел, но ничего не работает. Вот как я клонирую и устанавливаю текущие данные.

Как я могу сохранить значение select при клонировании?

 $('body').append('<form id="form-to-submit" style="visibility:hidden;"></form>');  
var fieldsetName = $this.parents('.fieldsetwrapper');  
$('#form-to-submit').html($(fieldsetName).clone());  
var data = $('#form-to-submit').serialize();  
4b9b3361

Ответ 1

Элемент option сохраняет свою текущую выбранность с помощью свойства selected javascript (не следует путать с атрибутом selected, который соответствует выбранной по умолчанию).

Так как jQuery clone не клонирует текущую выбранность (http://bugs.jquery.com/ticket/1294), вам придется сделать это вручную:

$('#form-to-submit').html($(fieldsetName).clone());
$('#form-to-submit select').val($('.fieldsetwrapper select').val());

Ответ 2

Вы должны иметь возможность установить значение нового элемента select в значение старого:

$('#form-to-submit select').val($('.fieldsetwrapper select').val());

Ответ 3

В моем случае я использовал

$('<form></form>').html($('.myDiv').clone())

и исправил проблему, добавив еще одну форму в разметку

$('.myForm').serialize()