js頁面跳轉常用的幾種方式
第一種:
方法1:
使用session存儲,確定用戶是否登錄,從而確定頁面跳轉至哪個頁面。
判斷本地有無customerID:
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中的呢?
function confirm(){
var tel=$tel.val();//獲取頁面中登錄名和密碼
var pwd=$pwd.val();
if(tel==""|| pwd==""){//判斷兩個均不為空(其他判斷規(guī)則在其輸入時已經判斷)
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代碼如下:
//判斷是否敲擊了Enter鍵
$(document).keyup(function(event){
if(event.keyCode ==13){
$("#login").trigger("click");
}
});
更多建議: