SHOJI's Code
 仕事や趣味で書いた各種言語のプログラミングコード(エクセルVBA,PHP,C/C++/C#,JavaScript等)、その他雑記。
2017.10<<123456789101112131415161718192021222324252627282930>>2017.12
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

とあるジョブで、ブラウザを別々に起動し、その片方からもう片方にデータを渡す必要に迫られた(-.-; (正確にはあるアプリケーションにActiveXとして貼り付けた2つのブラウザでの話)
悩みに悩んだ挙句、ふと思いついた。・・・Cookie。ってことで前記事でボツだったコードが復活した話を載せたが、それがこれ。
(cookie1.html)
<html>
<head>
<script type="text/javascript">

function setck()
{
setCookie("test", ckform.ck.value);
}

function setCookie(varname, val)
{
var list = document.cookie.split("; ");
var str_cookie = document.cookie;

for( i in list )
{
var dat = list[i].split("=");
if( dat[0] == varname || list[i] == varname )
{
str_cookie = str_cookie.replace(list[i], "");
str_cookie = str_cookie.replace("; ; ", "; ");
break;
}
}

str_cookie = varname + "=" + val + "; " + str_cookie;

if( (n = str_cookie.indexOf("expires")) >= 0 )
str_cookie = str_cookie.substr(0, n);

var expires = new Date();
expires.setTime(expires.getTime() + 86400 * 30);

str_cookie += "; expires=" + expires.toGMTString();
str_cookie = str_cookie.replace("; ; ", "; ");

document.cookie = str_cookie;
return document.cookie;
}

</script>
</head>
<body>
<form name="ckform">
<input name="ck" type="text">
<input type="button" onclick="setck();return false" value="SET">
</form>
</body>
</html>



(cookie2.html)
<html>
<head>
<script type="text/javascript">

function load()
{
document.getElementById("test").innerText = "test=" + getCookie("test");
setTimeout('load()',500);
}

function getCookie(varname)
{
var list = document.cookie.split("; ");

for( i in list )
{
var dat = list[i].split("=");
if( dat[0] == varname )
return dat[1];
}
return "";
}

</script>
</head>
<body onload="load();">
<div id="test"></div>
</body>
</html>


cookie1.htmlとcookie2.htmlを別々のブラウザで表示し、cookie1.htmlのテキストボックスに適当に入力しSETをクリックすると、cookie2.htmlの方にその値が表示される。

テーマ:JavaScript - ジャンル:コンピュータ
コメント
この記事へのコメント
コメントを投稿する

管理者にだけ表示を許可する
トラックバック
この記事のトラックバックURL
この記事へのトラックバック
copyright © 2004-2006 SHOJI, Powered By FC2ブログ all rights reserved.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。