2015-03-20 3 views
0

Я пытаюсь сделать копию узла dom, чтобы впоследствии восстановить его состояние после изменения. В этом случае после закрытия модального окна.Сохранение немодифицированной копии ошибок узла dom

Странно то, что после двух раз открытия модального, нажав кнопку #show_reg_form и закрыв модальный. Модальная переменная modal_body_initial, по-видимому, изменяется как следующий раз, когда я открываю модальное окно в измененном состоянии.

Я также пробовал с этой линией и без нее внутри функции скрытия.

modal_body = modal_auth.find('.modal-body'); 

Мысли о том, что я здесь не так?

$(document) 
.on('ready', function(){ 
    var modal_auth = $('#modal_auth'); 
    var modal_body = modal_auth.find('.modal-body'); 
    var modal_body_initial = modal_body.clone(); 

    $('#modal_auth').on('hidden.bs.modal', function (e) { 
     modal_body.replaceWith(modal_body_initial); 
     modal_body = modal_auth.find('.modal-body'); 
    }); 
}) 
.on('click', '#show_reg_form, #show_login_form', function(){ 
    var button = $(this); 
    var form = button.next(); 
    var parent = button.parent(); 

    form.hide(); 
    form.removeClass('hidden'); 

    parent.siblings(':not(.custom-header)').each(function(){ 
     $(this).hide(); 
    }); 

    form.slideDown(function(){ 
     button.slideUp(); 
    }); 
}) 
+0

проводки соответствующие части вашего HTML было бы полезно –

ответ

1

Если то, что вы пытаетесь сделать, это сохранить HTML из modal_body_initial, возможно, что-то вроде следующего будет работать для вас:

$(document).on('ready', function(){ 
    var modal_auth = $('#modal_auth'); 
    var modal_body = modal_auth.find('.modal-body'); 
    var modal_body_initial = modal_body.html(); // <------- EDIT 

    $('#modal_auth').on('hidden.bs.modal', function (e) { 
     modal_body.html(modal_body_initial); // <------- EDIT 
     modal_body = modal_auth.find('.modal-body'); 
    }); 
}); 
Смежные вопросы