プロが教える店舗&オフィスのセキュリティ対策術

<環境>
struts1.3.8
jdk1.4

今回以下のような処理を可能であればJavaScriptを用いて作りたいのですがどうしても実現方法がわかりません。
※formBeanには、value、name、otherという項目があります。
(1)セレクトボックスから値を選択
(2)onchangeが発生し、formBean.otherをid="otherView"のspanに表示する。

<select name="select_box" onchange="getOptionOtherValue()">
<logic:iterate id="list" collection="<%=bean.getList() %>" type="beans.formBean">
<option value="<%=list.getValue() %>">
<%=list.getName() %></option>
</logic:iterate>
</select>

<span id="otherView"></span>

サーバーに処理を戻さずに、selectIndex等を駆使して、何か良い方法はないでしょうか?ちなみに、Ajaxは使用しておりません。
出来ない場合は、出来ないというご返答でも構いません。
一人で開発しており、あきらめがつかないでいます。
どうぞ、よろしくお願いします。

A 回答 (1件)

まず、formBeanというのは、何でしょうか? Beanかなにかですか? リストにbeans.formBeanというのがあるので、このformBeanにプロパティがいくつか用意されている、ということでしょうか。



となると、ここでの質問は、「JSPでアトリビュートなどに保管されたBeanのプロパティを、JavaScriptを使って取得できるか」ということだと考えてよろしいですか。

こういうことだとすると、まずJSPでのアトリビュートやプロパティを直接JavaScriptから操作することはできません。ですから、formBeanというJavaのオブジェクトをそのままJavaScriptから利用することはあきらめたほうがよいです。そうしたい場合には、JavaScriptから操作できる場所に値を書き出しておき、それを扱うことになるでしょう。

例えば、<input type="hidden">などを用意してvalueにformBean.otherの値を書き出しておき、onchangeしたらdocument.getElementByIdなどでこれのvalueを取り出して他に設定すればいいんじゃないでしょうか。
    • good
    • 0

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