• 締切済み

セレクトボックスのonchanngeでvalueとtext以外の値を取得

<環境> 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は使用しておりません。 出来ない場合は、出来ないというご返答でも構いません。 一人で開発しており、あきらめがつかないでいます。 どうぞ、よろしくお願いします。

みんなの回答

noname#49664
noname#49664
回答No.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を取り出して他に設定すればいいんじゃないでしょうか。

関連するQ&A