我正在使用一个登录脚本,它使用 php 处理所有错误捕获和反馈消息。这些消息将用户发送到网站导航之外的页面,因此我试图让它们显示在 jquery 模式窗口中。我使用以下代码加载初始页面 onclick:
var dlg=$('#register').dialog({
title: 'Register for LifeStor',
resizable: true,
autoOpen:false,
modal: true,
hide: 'fade',
width:350,
height:350
});
$('#reg_link').click(function(e) {
e.preventDefault();
dlg.load('register.php', function(){
dlg.dialog('open');
});
});
这很好——脚本加载,用户可以填写注册信息。当他们提交该信息时,会使用以下代码生成 php 反馈消息:
function procLogin(){
global $session, $form;
/* Login attempt */
$retval = $session->login($_POST['user'], $_POST['pass'], isset($_POST['remember']));
/* Login successful */
if($retval){
//header("Location: ".$session->referrer);
header('Location:userhome(2).php');
}
/* Login failed */
else{
$_SESSION['value_array'] = $_POST;
$_SESSION['error_array'] = $form->getErrorArray();
header("Location: ".$session->referrer);
}
}
我将 header("Location") 行更改为: header("Location: lifestor2.html:);
这是具有模态框所在的隐藏 div 的主页。这种作品!它用反馈消息(在另一个 php 页面上)替换了模式对话框的内容。但是,由于模态对话框是在单击时启动的(见上文),您必须再次单击该链接才能看到反馈消息。
所以,我的问题:有没有办法在第一次点击时启动模式对话框,然后让它自动打开?我不想过多地使用 php 脚本,因为它非常分层和复杂。如果我可以在模态中显示正确的消息,那将是完美的。
问候...