本文实例讲述了js判断登录与否并确定跳转页面的方法。分享给大家供大家参考。具体如下:
使用session存储,确定用户是否登录,从而确定页面跳转至哪个页面。
判断本地有无customerID:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
function jumpTo(p, url) {
var customerId=sessionStorage.customerId;
if (customerId == undefined) {
p.attr( "href" , "page/Login/login.html" );
<span style= "white-space:pre" > </span>} else {
p.attr( "href" , url);
}
}
function infoJumpTo() {
var $info = $( "#info" );
jumpTo($info, "http://localhost/page/AmountAscension/amountAscension.html" );
}
function starJumpTo() {
var $star = $( "#star" );
jumpTo($star, "http://localhost/page/MyAccount/myAccount.html" );
}
|
html中,相应的a标签中,写onclick="infoJumpTo"等就可以了。
但登录页面的customerID是如何存储到本地的session中的呢?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
function confirm(){
var tel=$tel.val(); //获取页面中登录名和密码
var pwd=$pwd.val();
if (tel== "" || pwd== "" ){ //判断两个均不为空(其他判断规则在其输入时已经判断)
alert( "手机号密码均不能为空!" )
return false ;
} else { //以上均符合要求,则调用登录esb接口
$.ajax({
url:config.baseServerUrl + '/account/login' , //相对应的esb接口地址
type: 'post' ,
data:{mobile:tel,password:pwd}, //向服务器(接口)传递的参数
success: function (data){ //服务器(接口)返回来的数据
if (data.success){ //如果返回来的信息说明提交的信息为正确的
var customerId = data.attr.customerInfo.id; //将数据中用户信息的ID赋值给变量
sessionStorage.customerId = customerId; //将变量存储到本地sessionStorage中,并且value为customerID
window.location.href= 'http://localhost/index.html' ;//正确登录后页面跳转至
}
else { //如果返回来的信息说明提供的信息为错误的
if (tel != data.tel){ //判断是用户名还是密码错误,提示相应信息
alert(data.message);
$tel.val( "" );
$pwd.val( "" );
return false ;
}
if (pwd != data.pwd){
alert(data.message);
$pwd.val( "" );
return false ;
}
}
}
})
}
}
|
登录页面,人们一般习惯输完信息后,直接点击enter免除手动点击登录按钮,则js代码如下:
1
2
3
4
5
6
|
//判断是否敲击了Enter键
$(document).keyup( function (event){
if (event.keyCode ==13){
$( "#login" ).trigger( "click" );
}
});
|
希望本文所述对大家的javascript程序设计有所帮助。