Jquery:重新加载主页使用其他页面返回值

时间:2013-02-28 08:50:25

标签: php javascript jquery ajax

mainpage.php, 
loginModal.php, 
signInvalidate.php

我有一个页面有一个按钮,当点击模式对话框弹出时,模态的内容来自其他页面(loginModal.php)使用jquery .load,所以现在模态的内容是一个登录表单使用jquery ajax验证,该信息将信息发送到signInvalidate.php。我没有验证问题,如果它是错误仍然返回错误,但如果它是正确的信息,我想重新加载主页。我该怎么做?或Jquery .load接受返回TRUE值。

e.g。

signInvalidate.php

$result = $userFunction->checkLogin($useremail, @$password, @$remember, $gotUrl);

if($result == TRUE){

    return TRUE;

}

loginModal.php

success: function(msg){

    if(msg == TRUE){

        return true;

    }else{  

        $("#signInOutput").html(msg);

    }

}

mainpage.php

$('#previewOutput').load('modalLogin.php', function(){                        


});

1 个答案:

答案 0 :(得分:0)

您应该返回一个JSON对象,该对象具有您可以检查的已知密钥(例如status)和值(例如success)。

在PHP方面,您可以使用(假设5.2+)而不是return TRUE

print json_encode(array('status' => 'success' ));

如果你需要返回而不是打印,你应该明显改变它。在Javascript方面,你只需要JSON解码并处理它:

success: function(data) {
  var state = $.parseJSON(data);
  if(state.status == 'success') {
     window.reload();
  }

}

我认为上述内容需要一些修补,但它应该是一个很好的基础。

编辑:固定代码。