Php Codeigniter,如果用户登录,Jquery页面刷新
我已经试了一整天了,我不知道怎么做 我想做的是: 如果用户提交了登录表单,并且结果成功(意味着他的帐户存在,并且他可以登录),那么该页面应该在用户登录后重新加载/刷新,并且应该重定向到同一页面 这就是我到目前为止所做的: 在我的Php Codeigniter,如果用户登录,Jquery页面刷新,php,jquery,ajax,codeigniter,ajaxform,Php,Jquery,Ajax,Codeigniter,Ajaxform,我已经试了一整天了,我不知道怎么做 我想做的是: 如果用户提交了登录表单,并且结果成功(意味着他的帐户存在,并且他可以登录),那么该页面应该在用户登录后重新加载/刷新,并且应该重定向到同一页面 这就是我到目前为止所做的: 在我的custom functions.js文件中,我尝试为AJAX表单提交创建一个通用函数 function AjaxFormSubmit(data){ return data.ajaxSubmit({ success: function(output){
custom functions.js
文件中,我尝试为AJAX表单提交创建一个通用函数
function AjaxFormSubmit(data){
return data.ajaxSubmit({
success: function(output){
var result = output.split(":::");
if(result[0] == "error")
{
var msg = result[1];
ErrorNotification(msg);
return 2;
}else
if(result[0] == "warning")
{
var msg = result[1];
WarningNotification(msg);
}else
if(result[0]== "alert")
{
var msg = result[1];
AlertNotification(msg);
}else
if(result[0]== "success")
{
var msg = result[1];
SuccessNotification(msg);
return 1;
}
},
error: function(output){
var msg = 'Some Database Error Occurred';
ErrorNotification(msg);
}
});
}
这是我的登录表:
<form action="ManageUsers/login" id="UserLoginForm" method="POST" accept-charset="UTF-8">
<input id="user_username" placeholder="Username Here" style="margin-bottom: 15px; width:90%;" type="text" name="Username" />
<input id="user_password" placeholder="Password Here" style="margin-bottom: 15px; width:90%;" type="password" name="Password" />
<input id="user_remember_me" style="float: left; margin-right: 10px;" type="checkbox" name="RememberMe" value="1" />
<label class="string optional" for="user_remember_me"> Remember me</label>
<input class="btn btn-primary" id="UserLoginBtn" style="clear: left; width: 100%; height: 32px; font-size: 13px;" type="button" name="commit" value="Sign In" />
</form>
记得我吗
这是我的登录表单中用于调用表单提交函数的脚本
<script language="JavaScript">
$(document).ready(function(e){
$('#UserLoginBtn').click(function(e){
var UserLoginForm = $('#UserLoginForm');
var FullURL = '';
var PathUrl = getAbsolutePath();
var HashLocation = location.hash;
var FullURL = PathUrl+HashLocation;
//window.location.reload(FullURL);
var result = AjaxFormSubmit(UserLoginForm);
alert(result.data);
});
});
</script>
$(文档).ready(函数(e){
$('#UserLoginBtn')。单击(函数(e){
var UserLoginForm=$(“#UserLoginForm”);
var-FullURL='';
var PathUrl=getAbsolutePath();
var HashLocation=location.hash;
var FullURL=PathUrl+HashLocation;
//window.location.reload(FullURL);
var result=AjaxFormSubmit(UserLoginForm);
警报(结果、数据);
});
});
表单提交成功,但是如果调用了success函数,如何重新加载页面
任何帮助都将不胜感激。您可以尝试以下方法:
<script language="JavaScript">
$(document).ready(function(e){
$('#UserLoginBtn').click(function(e){
var UserLoginForm = $('#UserLoginForm');
var FullURL = '';
var PathUrl = getAbsolutePath();
var HashLocation = location.hash;
var FullURL = PathUrl+HashLocation;
//window.location.reload(FullURL);
var result = AjaxFormSubmit(UserLoginForm);
if(result == 1){
window.location.href = FullURL;
}
});
});
$(文档).ready(函数(e){
$('#UserLoginBtn')。单击(函数(e){
var UserLoginForm=$(“#UserLoginForm”);
var-FullURL='';
var PathUrl=getAbsolutePath();
var HashLocation=location.hash;
var FullURL=PathUrl+HashLocation;
//window.location.reload(FullURL);
var result=AjaxFormSubmit(UserLoginForm);
如果(结果==1){
window.location.href=FullURL;
}
});
});
在php窗口中尝试标题(“位置:”url”);Location=“url”"; 据我所知,在JSA中,表单在任何情况下都是提交的,因为您不会阻止表单提交,只需在单击按钮时进行额外的ajax调用,对吗?注意:在php中,url必须是绝对的。在标题中
那么,你能用一个参数来扩展这个函数吗,比如AjaxFormSubmit(数据,url),然后如果这个参数被定义,那么在成功的时候将window.location.href设置到这个url。你可以使用如果(typeof url!==“undefined”
或者如果(typeof url==“string”){}
不起作用,并且不会发出警告(结果);返回[object][object]
:(