Как я могу получить только один div для обновления при отправке, как на всю страницу? - PullRequest
0 голосов
/ 18 января 2011

Я работаю с динамически генерируемой страницей, написанной на PHP. Дивон страницы содержит содержимое перечисленных ссылок FancyBox, которые открывают экраны редактирования. После того, как редактирование завершено, и пользователь закрывает модальный FancyBox изменения необходимо отразить на родительской странице.

Правильно, поэтому я смог найти решение, которое обновляет всю страницу при отправке. используя

  parent.location.reload (true);

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

как я могу получить только один div для обновления при отправке как накладывается на всю страницу ??????

Ответы [ 6 ]

3 голосов
/ 19 января 2011

Вам необходимо отправить форму через AJAX. Поскольку вы используете что-то, что использует jQuery, вы можете использовать это для этого.

Здесь вы можете найти учебник о том, как это сделать

1 голос
/ 18 января 2011

Я думаю, что лучший способ - загрузить фрагменты страницы с помощью .load().

, например,

$('#pageNeedToBeRefreshed').load('test.html #pageNeedToBeRefreshed');
0 голосов
/ 19 января 2011
jQuery('#id_of_div').load('/url/to/updated/html');

См. Документы jQuery для загрузки ()

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

Вместо использования submit в html вы можете отправить свою форму, используя ajax -

$('#formid').submit(function(){
        var data = $(this).serialize();  //this gives you the data of all elements of form in serialized format
        $.ajax({
              type: 'POST',
              dataType:"json",
              url: 'your url',
              data: data,
              success: function(data){

                           //replace the contents of the div you want to refresh here.
                           }
        });
    });
0 голосов
/ 18 января 2011

Предположим, у вас есть следующий div для обновления:

Затем напишите

$("#dataToRefresh").load();

Может быть, это поможет вам

0 голосов
/ 18 января 2011

Пользователь,

Это должно быть довольно просто

иметь место для div, как показано ниже

<div id="dataToRefresh"> </div>

Как только вы закроете диалоговое окно, создайте обработчик событий ...

$('dataToRefresh').html('testing'); // укажите здесь свои данные

это должно обновлять части страницы

дайте мне знать, если вам нужно что-нибудь еще

пожалуйста, пройдите через .html api для получения дополнительной информации

http://api.jquery.com/html/

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