ホームページ  >  記事  >  ウェブフロントエンド  >  Cookies_javascriptスキルから値を取得するjsの簡単な実装

Cookies_javascriptスキルから値を取得するjsの簡単な実装

WBOY
WBOYオリジナル
2016-05-16 16:42:411284ブラウズ

作業の過程で、JSがCookieから値を取得する必要に遭遇しました。JSにはCookieの対応する値を取得するためのKey値を指定する既成のメソッドがないようです。を参照してください。インターネット上のコード。簡単な実装は次のとおりです。

1. サーバー側コード、Page_Load の Cookie にいくつかの値を書き込みます

using System; 
using System.Collections.Generic; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 

namespace WebApplication_TestJS 
{ 
public partial class _Default : System.Web.UI.Page 
{ 
protected void Page_Load(object sender, EventArgs e) 
{ 
Response.Cookies["DONO"].Value = "EDO1406300001"; 
Response.Cookies["DOID"].Value = "ABCDEFG123456"; 
Response.Cookies["DOSOURCE"].Value = "WUWUWUWU"; 
Response.Cookies["DOTYPE"].Value = "2"; 
} 
} 
}


2. クライアント コード。取得した値をトリガーして出力するために使用されるボタンとテキスト ボックスをページに追加します

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication_TestJS._Default" %> 
<html> 
<script language="javascript" type="text/javascript"> 
function GetCookie() 
{ 
/*获取Cookies里面存放信息 了解其字符串结构*/ 
var Cookies = document.cookie; 
document.getElementById("<%=txtContent.ClientID%>").innerText = Cookies; 

/*处理字符串截取出来需要的目标值*/ 
var target = "DONO" + "="; 
if (document.cookie.length > 0) 
{ 
start = document.cookie.indexOf(target); 
if (start != -1) 
{ 
start += target.length; 
end = document.cookie.indexOf(";", start); 
if (end == -1) end = document.cookie.length; 
} 
} 

/*目标值赋值给控件*/ 
document.getElementById("<%=txtTarget.ClientID%>").innerText = document.cookie.substring(start, end); 
} 
</script> 
<head runat="server"> 
<title></title> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div> 
<asp:Button ID="btnGetReq" runat="server" Text="获取内容" OnClientClick="GetCookie()" /> 
<br /> 
<asp:TextBox ID="txtContent" runat="server" Columns="120"></asp:TextBox> 
<br /> 
<asp:TextBox ID="txtTarget" runat="server" Columns="120"></asp:TextBox> 
</div> 
</form> 
</body> 
</html>


3. 実行結果から、Cookie が最初のテキスト ボックスに格納されている構造であることがわかります。必要に応じて、対応する文字列をインターセプトできます。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。