簡體   English   中英

Ajax無法正確加載新頁面

[英]Ajax not loading new page correctly

我有一個登錄表單,當前我使用AJAX將我的login.php腳本中的錯誤消息(例如“不正確的電子郵件”)顯示到index.php上的登錄表單中的div上,而不是加載包含錯誤的新頁面他們。

但是,如果詳細信息正確且登錄成功,它也會在我的登錄表單內的div上顯示整個成功頁面的位置。 我不知道如何解決此問題,我嘗試了一個if語句來說它是否成功加載了一個新位置,但是仍然無法正常工作。 這是我的登錄表單的AJAX:

$("#login_button").click(function() {
  $.post($("#login_form").attr("action"),
    $("#login_form :input").serializeArray(),
    function(info) {
      if (info.status != null) {
        header('Location: home.php');
      } else {
        $("#login_errors").html(info)
      };
    });

  // Prevent the default action from occurring.
  return false;
});

有人知道如何解決此問題嗎?

該行header('Location: home.php');出了錯header('Location: home.php'); ,這是您要在JS下使用的PHP語句。

您可以使用window.location = "home.php"; 在JS下重定向。

我認為另一件事是錯誤的

回調函數需要兩個參數,

  1. 您在操作腳本中返回的內容。

  2. 表單狀態

function(info) {更改為function(info, status) {

並在您的if語句下使用if (status!="success") {

了解有關post in JS更多信息: http : //www.w3schools.com/jquery/jquery_ajax_get_post.asp

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM