本文實例講述了js判斷登錄與否並確定跳轉頁面的方法。分享給大家供大家參考。具體如下:
使用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==""){//判斷兩個均不為空(其他判斷規則在其輸入時已經判斷) 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"); } });
希望本文所述對大家的javascript程序設計有所幫助。