2014-12-11 5 views
0

У меня есть страница под названием index.html, которая содержит <div id ="header"> и <div id = "midSection". Header имеет элементы навигации, и когда пользователь нажимает на них, я загружаю разные документы .php в midSection с использованием JQuery (вызовы AJAX).
У одного из документов .php есть регистрационная форма, и при отправке нажмите «Я», чтобы успешно отправить данные в БД. Я предотвратил стандартные действия, поэтому, когда данные отправляются, перенаправления по умолчанию не происходят.
То, что я пытаюсь сделать, - это когда данные отправляются для перенаправления пользователя на index.html (принудительное обновление), но header изменено на другой div (например, headerOnLogin). Есть ли все-таки сделать это?Как заменить содержимое страницы на принудительную перезагрузку?


  else { 
    $.post($("#regForm").attr("action"), 
    $("#regForm :input").serializeArray(), 
    function(info){ 
      //php script returns this key if data is inserted into database successfully  
       if (info == 4521789524355214852) { 

       //RELOAD PAGE, REPLACE HEADER IN INDEX.HTML 

      } 
       else{ 

       $("#errorArea").empty(); 
       $("#formPseudoContainer").effect('shake', 750); 
       $("#errorArea").fadeOut('15000', function() { }); 
       $("#errorArea").fadeIn('15000', function() { }); 
       $("#errorArea").text(info); 
        setTimeout(function() { 
         $("#errorArea").empty(); 
          }, 5000); 

       }    

    }); 
    } 

     $("#regForm").submit(function() { // prevents redirecting to another page after submitting form 
     return false; 
    }); 

+1

Вы перезагружаете всю страницу, а не только 'midSection' DIV, когда это происходит? – Barmar

+0

@Barmar, да, я хочу перезагрузить всю страницу или, по крайней мере, перенаправить на ту же страницу с другим 'header'. Изменение только «midSection» было бы тривиальным, поскольку я уже реализовал функции для этого =/ – iColdBeZero

+0

Почему бы просто не отправить форму с использованием действия по умолчанию и когда это сделать, обновив DB redirect to index.php/index.html с некоторым флагом/контентом? – PeterKA

ответ

2

Перезагрузить страницу используя что-то вроде:

window.location = "index.html?header=headerOnLogin"; 

Тогда имеют JavaScript в index.html проверки window.location.search, чтобы увидеть, если он имеет header=headerOnLogin и отображать новый DIV заголовка, который вам хотеть.

Или вы могли бы использовать index.php, а скрипт PHP мог проверить $_GET['header'].

Смежные вопросы