Php Jquery:使用其他页面返回值重新加载主页面
我有一个页面有一个按钮,当单击弹出的模式对话框时,模式的内容来自另一个页面(loginModal.php),使用jquery.load,因此现在模式的内容是一个登录表单,它使用jquery ajax进行验证,jquery ajax将信息发送到signInvalidate.php。我在验证上没有问题,如果它是错误的,它仍然返回错误,但是如果它是正确的信息,我想重新加载主页。我该怎么做?或者Jquery.load接受返回真值 e、 g signInvalidate.phpPhp Jquery:使用其他页面返回值重新加载主页面,php,javascript,jquery,ajax,Php,Javascript,Jquery,Ajax,我有一个页面有一个按钮,当单击弹出的模式对话框时,模式的内容来自另一个页面(loginModal.php),使用jquery.load,因此现在模式的内容是一个登录表单,它使用jquery ajax进行验证,jquery ajax将信息发送到signInvalidate.php。我在验证上没有问题,如果它是错误的,它仍然返回错误,但是如果它是正确的信息,我想重新加载主页。我该怎么做?或者Jquery.load接受返回真值 e、 g signInvalidate.php mainpage.php,
mainpage.php,
loginModal.php,
signInvalidate.php
loginModal.php
$result = $userFunction->checkLogin($useremail, @$password, @$remember, $gotUrl);
if($result == TRUE){
return TRUE;
}
mainpage.php
success: function(msg){
if(msg == TRUE){
return true;
}else{
$("#signInOutput").html(msg);
}
}
您可能应该返回一个JSON对象,该对象具有一个已知的键(例如
status
)和值(例如success
),您可以对其进行检查
在PHP方面,您可以使用(假设为5.2+)而不是返回TRUE
:
$('#previewOutput').load('modalLogin.php', function(){
});
如果您需要返回而不是打印,您显然应该更改它。在Javascript方面,您只需对其进行JSON解码并进行处理:
print json_encode(array('status' => 'success' ));
我认为上面的内容需要一些修改,但它应该是一个很好的基础
编辑:固定代码。确定。谢谢你的想法,我会尝试一下,但我必须先学习JSON。我还真的不知道,把JSON看作是一个非常轻量级的XML版本(缺少一些大多数人从未使用过的XML特性,也没有那么详细)。在上面的示例中,您正在对关联数组进行编码,因此将发送的JSON是
{“status”:“success”}
(一个对象)。
success: function(data) {
var state = $.parseJSON(data);
if(state.status == 'success') {
window.reload();
}
}