0
mainpage.php, 
loginModal.php, 
signInvalidate.php

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

例如

签名无效.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);

    }

}

主页.php

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


});
4

1 回答 1

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();
  }

}

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

编辑:固定代码。

于 2013-02-28T09:01:11.567 回答