Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

ロキ

STRUTSとJSPでページを作っています。
javascriptの中で
Aというキー値のオブジェクト(フィールド変数としてaをもつ)がリクエストにセットされているかどうかでif分岐を行いたいのですがうまく動きません・・。

具体的には

function test(){
 var hoge = ${A.a};
}

こういったスクリプトが存在した場合、
ActionクラスかどこかでAというキー値でリクエストにオブジェクトをセットしておかないと
ソースとして展開されたときに

function test(){
 var hoge = ;
}

となってしまい、オブジェクトを指定してください、というエラーがでます。

そこで

if(A != null)や
if(typeof(A) != "undefined")や
if(${A} != null)などのif文を追加したのですが

全て同じエラーが出てしまいます・・。
解決方法がわかる方教えてください;;


4

回答

78673

閲覧

4件の回答

評価

0

おそらくサーバ側処理とクライアント側処理の、区別ができていないのではと思います。

>if(A != null)や
>if(typeof(A) != "undefined")や
>if(${A} != null)などのif文を追加したのですが
${A.a}がサーバ側で展開される以上、JavaScriptで判定を入れても遅いです。
同じくサーバ側で判定を入れないと。

評価

0

なるほど・・。サーバ側ということはActionクラスあたりで必ず何らかの値をAという名でリクエストにセットするようにすればいいということでしょうか??

評価

0

サーバー側でやった方が後々のメンテを考えるといいのでは、ないでしょうか?



http://paguchan.web.fc2.com/

評価

0

空文字をAという名前でセットしたところ動作しました!!ありがとうございます^^

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。