在此代码中, OTPVerficationHTML()函数的条件为 data.rval == 2 ,其中应重定向到登录页面仅在该页面中显示消息
var flag = 0;
$("#successPrimary").on('click', function(e) {
e.preventDefault()
user_name = $('#Login_UserName').val();
password = $('#Login_Password').val();
captcha = $('#Login_captcha').val();
var PostData = {};
PostData['put'] = true;
PostData['form_login_username'] = user_name;
PostData['form_login_password'] = password;
PostData['form_login_captcha'] = captcha;
Application.Post("/ajax/ajax_login", PostData, function(data){
if(data.rval == 1){
window.location = "/offerletter/index";
Application.PageAlertBox.Show('Sucess', ['Login Successfully.']);
}else if(data.rval == 2){
OTPVerficationHTML()
Application.PageAlertBox.Show('info', ['Enter OTP to Verify.']);
}else{
Application.PageAlertBox.Show('error',[data.Message]);
}
});
});
var OTPVerficationHTML = function () {
initial_html = $('#otpfromlogin').html();
$('#otpfromlogin').empty();
$('#buttons').empty();
$('#otpfromlogin').append(final_html);
$('#Login_UserName').val(user_name);
$('#Login_UserName').attr('readonly', 'true');
$('#Login_UserName').focus();
}
$('#otpfromlogin').on('click', '#otp-verify', function(e) {
e.preventDefault()
otp = $('#form_otp').val();
var PostData = {};
PostData['put'] = true;
PostData['form_login_otp'] = otp;
Application.Post("/ajax/ajax_loginwithotp", PostData, function(data) {
if(data.rval == 1) {
window.location = "/offerletter/index";
Application.PageAlertBox.Show('Sucess', ['Successfully Loggedin.']);
} else if(data.rval == 2) {
window.location = "/signin";
Application.PageAlertBox.Show('info', ['OTP is Expired, Pleasem login with new OTP.']);
} else if(data.rval == -4) {
Application.PageAlertBox.Show('error', ['OTP is Invalid. Please Enter correct OTP.']);
} else {
Application.PageAlertBox.Show('error', [data.Message]);
}
});
});
它不会在登录页面上显示消息。我不知道如何处理这种情况。
答案 0 :(得分:0)
如果重定向工作正常,您可以更改以下代码:
$_POST['q']
到
signin
在{{1}}页面中,您可以使用{{1}}收到此消息。根据此值,您可以在{{1}}页面中执行下一组活动。
答案 1 :(得分:0)
使用jquery有很多方法可以做到这一点:
<强> Window.loaction 强> 将返回当前页面的url。 分配时,将页面的URL更改为已分配的URL并显示它。
window.location = "/signin";
如上例所示
<强> Window.location.replace 强>
导航到所需的网址,而不向历史记录添加记录。
window.location.replace("http://someaddress");
<强> Window.location.assign 强>
导航到所需的网址,将记录添加到历史记录中。
window.location.assign("http://someaddress");
<强> Window.location.href 强>
模拟用户点击。
window.location.href = "/signin";
有Discussion这里关于.location.href是否对.location有更好的用途,如果你感兴趣的话。
如接受的答案所述,请使用$ _POST [&#39; q&#39;]获取数据。