最后在做的頁(yè)面,比如用戶數(shù)據(jù)(用戶頭像,名稱,年齡)這些信息,因?yàn)榇蟛糠猪?yè)面都要用,之前是通過(guò)url地址傳,另一頁(yè)面接收??紤]到這樣做會(huì)讓url過(guò)長(zhǎng),因此,嘗試使用cookie,把固定的值保存在cookie,其它頁(yè)面拿出來(lái)就可以使用。
成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比當(dāng)雄網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式當(dāng)雄網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋當(dāng)雄地區(qū)。費(fèi)用合理售后完善,十載實(shí)體公司更值得信賴。
在此之前,先寫通過(guò)url傳值與取值的過(guò)程。url通過(guò)跳轉(zhuǎn)頁(yè)面,給跳轉(zhuǎn)頁(yè)的url問(wèn)號(hào)后拼接參數(shù)的方法傳值:
//問(wèn)號(hào)后的userId / dialogId都是要傳的參數(shù) //如果有多個(gè)參數(shù),就用“&”拼接 window.location.href = 'doctor_ask.html?userId=' + userId + "&dialogId=" + dialogId;
在doctor_ask.html頁(yè)面,把在url中的參數(shù)取下來(lái),要使用一個(gè)方法getQueryString(),其中有一個(gè)方法是用來(lái)獲取url中含有中文參數(shù)的:
/* 獲取url后的某一個(gè)query的值 */ function getQueryString( name ) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); //獲取url中"?"符后的字符串并正則匹配 var context = ""; if (r != null) context = r[2]; reg = null; r = null; return context == null || context == "" || context == "undefined" ? "" : context; } //獲取Url中中文參數(shù)的方法 function getQueryUrlString(name) { var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i'); var r = window.location.search.substr(1).match(reg); if(r != null) { return decodeURI(r[2]); } return "請(qǐng)選擇"; }
使用方法獲取參數(shù):
//調(diào)用方法獲取參數(shù),方法中的參數(shù)名是一個(gè)字符串 var userId = getQueryString('userId')
第二種,通過(guò)cookie方法傳值,我這里使用的是jQuery cookie,因此需要先加載jQuery與cookie:
在其中一個(gè)頁(yè)面,比如首頁(yè),將要保存的值存放在cookie.
如果僅是一個(gè)id,直接使用鍵值對(duì)的方法保存即可:
//將id保存在cookie $.cookie('doctorId', '11916111-f2eb-11e4-b756-f40669963d49'); //從cookie中取出id var doctorId = $.cookie('doctorId');
如果是多個(gè)值,需要將多個(gè)值放在對(duì)象中,保存這個(gè)對(duì)象:
//將多個(gè)值存放在對(duì)象中 var userData = { userId: "11916122-f2eb-11e4-b756-f40669963d49", patientName: "張麗", patientAge: 23, patientSex: "F" } //將這個(gè)對(duì)象保存在cookie,它的鍵是對(duì)象名稱,值為JSON.stirng(),目的是將這個(gè)對(duì)象解析為字符串,因?yàn)閏ookie的鍵與值都是字符串 $.cookie('userData' , JSON.stringify(userData));
如果在其它頁(yè)面使用這個(gè)cookie中對(duì)象,可以取出這個(gè)對(duì)象并將對(duì)象轉(zhuǎn)換為字符串
var userData = $.cookie('userData'); if(userData){ //JSON.parse() 將字符串解析為對(duì)象,方便使用 userData = JSON.parse(userData); };
兩個(gè)知識(shí)點(diǎn):
//字符串解析為對(duì)象 JSON.parse(對(duì)象名稱); //對(duì)象解析為字符串 JSON.stringify(對(duì)象名稱);
以上這篇頁(yè)面間固定參數(shù),通過(guò)cookie傳值的實(shí)現(xiàn)方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持創(chuàng)新互聯(lián)。