新生活を充実させるための「こだわり」を取材!!

javaのsession.setAttribute()でセットした値をjavascriptで取得することは可能なのでしょうか?
可能であれば、手法を教えていただければと思います。
よろしくお願いします。

教えて!goo グレード

A 回答 (2件)

セッションIDの保存はcookieかURLに連結する方法しか有りませんから、


JavaScriptでdocument.cookieや<a href="">を解析するなどしてセッションIDを取得することは可能だと思います。

セッションIDとセッションの値・内容との関連づけはサーバーで行われていますから、
その値を取得するにはAjaxなどで読み込むとかしないと無理だと思います。
    • good
    • 1
この回答へのお礼

回答ありがとうございます。
cookieを使用する方法で、もう一度調べてみます。

お礼日時:2011/05/30 09:15

フレームワークやライブラリによって出来るものもあるのかもしれませんが、


基本的にはJavaScriptで直接取得することは出来ません。
ですが、扱いたい値が文字列であらわすことが可能で、クライアント側がJSPなどであれば
スクリプトレットや式などで参照するか、formのhiddenを通して取得することは難しくないです。
たとえば、
<%
String str = (String) session.getAttribute("hoge");
%>
<script type="text/javascript">
alert('<%= str %>'); //alert('<%= (String) session.getAttribute("hoge") %>'); でも同じ
</script>
とか、
<form name="hogeForm">
<input type="hidden" name="hoge" value="<%= (String) session.getAttribute("hoge") %>" >
</form>
<script type="text/javascript">
alert(document.forms['hogeForm'].elements['hoge'].value);
</script>
みたいな感じです。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
やはり、直接取得するのはむりですか。
別の方法を検討してみます。

お礼日時:2011/05/30 09:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

教えて!goo グレード

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング