Как перезагрузить родительскую страницу «на заднем плане», не закрывая диалоговое окно jquery - PullRequest
0 голосов
/ 19 января 2012

У меня есть диалоговое окно jquery, которое используется для редактирования и обновления определенной записи в списке. Когда щелкают по определенной записи «... и открывается диалоговое окно jquery, я хочу, чтобы родительское окно« на фоне »перезагрузилось, не закрывая диалоговое окно jquery, поэтому при закрытии диалогового окна список будет обновляться. Я пытался поставить window.location.reload(); перед открытием нового диалогового окна, но оно не работает. Вместо этого он обновляет всю родительскую страницу и закрывает диалоговое окно. Есть идеи?.. Вот часть моего кода ..

$('.pricesave').live('click', function() {
var id = $(this).attr('rel');

$("#addprice_1").dialog('close');

 var qq = $("#mainForm2").serialize();

   $.ajax({  
        type: "POST",  
        url: "partprice2.php",  
        data: qq,  
        success: function(){  
    window.location.reload();
             $("#edit_number").data('num_id', id).dialog('close').dialog('open');
            return false;

        }  
    });  

});

1 Ответ

0 голосов
/ 19 января 2012

К сожалению, вам придётся придумать что-нибудь более умное, чем указание перезагрузить страницу из-за способа работы диалогов JQuery UI.

В отличие от традиционных всплывающих окон, они на самом деле просто позиционированы <div> добавляется на страницу динамически.Таким образом, перезагрузка страницы удалит эту разметку, и ее нужно будет повторно добавить (то есть вызов для открытия диалогового окна должен быть сделан в Javascript).

Так что это проще всего (но хуже всего из опыта пользователя)) подход может заключаться в том, чтобы сериализовать текущее состояние диалогового окна, сохранить его в cookie-файле, перезагрузить страницу и при загрузке страницы проверить этот cookie-файл и, если вы его найдете, снова открыть диалоговое окно и восстановить предыдущее состояние, а затем удалить cookie-файл.Очевидно, что это создаст «флеш», пока страница перезагружается, и не будет быстрым или эффективным.

Если это должно быть гладко, вам нужно будет найти способ обновления остальныхстраница, не затрагивая разметку диалога jQuery.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...