2つのWebページ間でパラメータを渡す
4344 ワード
1.JavaScriptはURLで値を伝える(簡単な少量のデータを渡す.URLは長さに一定の制限がある)(推奨しない)
まずURLでパラメータをURLに渡す(Aページで渡す)
指定されたURLのパラメータを取得する必要があります(Bページ、すなわちパラメータが必要なページ取得)
2.JavaScriptはCookieで値を伝えます(推奨)
Cookieは、スクリプトとサーバプログラムが1つのページで別のページの入力データを使用できるように、ブラウザにメモリを提供するために使用される特定のWebページまたはWebサイトに関連付けられた少量のネーミングデータを格納するブラウザです.
*Cookieは時間を設定する必要があります.時間を設定しないと、ブラウザが閉じたときに閉じるのがデフォルトです.
***Cookieのデフォルトフォーマットはname=usernameです.格納がjsonn形式:{name:username}データクッキーもname=usernameとして保存されます.取得時には正規検証が必要です.
まずはCookieの設定(Aページで渡すパラメータを設定)
Cookieの取得(Bページで必要なパラメータusernameを取得)
Cookieのパッケージ【一】(データ形式がjson形式の場合)をご紹介します
一般フォーマット分装【二】(データフォーマットは一般フォーマット)
3 JavaScriptはHTML 5を介してローカルに転送値を格納します(個人的にはクッキーのような感じで、データは自機に格納します)(推奨)
ローカルストレージの方法
ストレージの取得
ローカルストレージを削除する場合
タイミングクリアが必要な場合は、タイマsetInterval(「function()」、time(ミリ秒))とタイマsettimout(「function()」、time(ミリ秒))を使用します.前者はループ操作function関数、後者はタイミング操作関数functionです.ループを必要とする場合は再帰を使用します.(本章の主要部分ではなく簡単に述べる)
まずURLでパラメータをURLに渡す(Aページで渡す)
location.href="url?name=xuanyuan" // &sex="man";
指定されたURLのパラメータを取得する必要があります(Bページ、すなわちパラメータが必要なページ取得)
/**
* URL
* URL:http://www.quwan.com/index?name=tyler
* :paramName URL
* :getParam("name")
* :tyler
*/
function getParam(paramName) {
paramValue = "", isFound = !1;
if (this.location.search.indexOf("?") == 0 && this.location.search.indexOf("=") > 1) {
arrSource = unescape(this.location.search).substring(1, this.location.search.length).split("&"), i = 0;
while (i < arrSource.length && !isFound) arrSource[i].indexOf("=") > 0 && arrSource[i].split("=")[0].toLowerCase() == paramName.toLowerCase() && (paramValue = arrSource[i].split("=")[1], isFound = !0), i++
}
return paramValue == "" && (paramValue = null), paramValue
}
2.JavaScriptはCookieで値を伝えます(推奨)
Cookieは、スクリプトとサーバプログラムが1つのページで別のページの入力データを使用できるように、ブラウザにメモリを提供するために使用される特定のWebページまたはWebサイトに関連付けられた少量のネーミングデータを格納するブラウザです.
*Cookieは時間を設定する必要があります.時間を設定しないと、ブラウザが閉じたときに閉じるのがデフォルトです.
***Cookieのデフォルトフォーマットはname=usernameです.格納がjsonn形式:{name:username}データクッキーもname=usernameとして保存されます.取得時には正規検証が必要です.
まずはCookieの設定(Aページで渡すパラメータを設定)
document.cookie="name="+username;
Cookieの取得(Bページで必要なパラメータusernameを取得)
var username=document.cookie.split(";")[0].split("=")[1];//
Cookieのパッケージ【一】(データ形式がjson形式の場合)をご紹介します
var j = { // json
name : " ",
age : 18
};
setCookie(j,2);// Cookie。2
var val = getCookie("name"); // Cookie( )
alert( val );//
alert( getCookie("age") );//18
//Cookie
// cookie
function setCookie(vJson , time){
var data = new Date( new Date().getTime() + time*24*60*60*1000 ).toGMTString();
for (var key in vJson)document.cookie = key+"="+vJson[key]+"; expires="+data;
}
// cookie
function getCookie(key){
var arr = document.cookie.match(new RegExp("(\\s|^)"+key+"=([^;]*)(;|$)"));//
return arr?arr[2]:"";
}
// cookie
function removeCookie(key){
var json = {};
json[key] = "";
setCookie(json , -1);//
}
/*function getCookie(key){
var cookie = document.cookie;
var reg = new RegExp("(\\s|^)"+key+"=([^;]*)(;|$)"); // (\s|^)age=(.*)(;|$)
var s = cookie.match(reg)[2];
return s;
}*/
一般フォーマット分装【二】(データフォーマットは一般フォーマット)
// Cookie
function addCookie(name,value,expireHours){
var cookieString=name+"="+escape(value);
//
if(expireHours>0){
var date=new Date();
date.setTime(date.getTime+expireHours*3600*1000);
cookieString=cookieString+"; expire="+date.toGMTString();
}
document.cookie=cookieString;
}
// Cookie
function getCookie(name){
var strCookie=document.cookie;
var arrCookie=strCookie.split("; ");
for(var i=0;i
3 JavaScriptはHTML 5を介してローカルに転送値を格納します(個人的にはクッキーのような感じで、データは自機に格納します)(推奨)
ローカルストレージの方法
localStorage.name = " ";
localStorage.age = 18;//
ストレージの取得
var myname = localStorage["name"];//myname
ローカルストレージを削除する場合
//
localStorage.removeItem("name");
タイミングクリアが必要な場合は、タイマsetInterval(「function()」、time(ミリ秒))とタイマsettimout(「function()」、time(ミリ秒))を使用します.前者はループ操作function関数、後者はタイミング操作関数functionです.ループを必要とする場合は再帰を使用します.(本章の主要部分ではなく簡単に述べる)