プロが教えるわが家の防犯対策術!

質問です。
HTMLで作られた画面のテキストボックス(test1)に値を設定し、
ボタンを押下することによってJava(サーブレット?)に値を渡し、
Java側からHTML画面の別のテキストボックスに値を設定するのには
どうしたら良いのでしょうか?
画面は
<HTML><HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
<TITLE></TITLE>
</HEAD><BODY>
<FORM name="Form" action="main">
<TR><TD><INPUT type="text" name="test1">
<INPUT type="text" name="test2">
</TD></TR><BR>
<TR><TD><INPUT type="submit" value="試験"></TD></TR>
</FORM></BODY></HTML>
こんな感じです。
Java側のdoGetメソッドで
String name = request.getParameter( "test1" );
で取得した値を画面のtest2のテキストボックスに値を設定したいのですが
新しくHTML画面を作成するのではなく、既存の画面のテキストボックスに値をいれることができるのでしょうか?
よろしくお願いします

A 回答 (3件)

HTML を JSP にして action="そのファイル"にしてみては。


<input type="text" name="test2" value="<%=request.getParameter("test1")%>" />
でしたかな。
最初は null になりますけど。試してないのでただの参考程度にしてください。

この回答への補足

なるほどー参考になります。
もう一つ聞きたいのですが、
もしもラジオボタンを選択することで有効になるテキストボックスが3つあり、
<INPUT type="button" name="namae" value="one">
<INPUT type="text" name="test1">
<INPUT type="button" name="namae" value="two">
<INPUT type="text" name="test2">
<INPUT type="button" name="namae" value="three">
<INPUT type="text" name="test3">
ラジオボタンを選択し、有効になったテキストボックスに設定されている値を
<INPUT type="submit" value="試験">
↑ボタン押下後にJava側に渡し、
戻り値を4つ目のテキストボックス
<INPUT type="text" name="test4">
に設定するにはどうしたら良いのでしょうか?
JavaとHTMLの関連がつかめず戸惑っています。
よろしくお願いします。

補足日時:2007/11/26 22:49
    • good
    • 0

同じく同じ JSP ファイル(action で送る先)で if 分岐して値を取得して式で test4 へ出力するという感じと思います。


サーブレットより JSP のほうが簡単でしょう。
サーブレット入門あたりで検索するとそのようなサンプルでてきそうですね。

この回答への補足

何度もすいません。
if分岐する時の条件はどうすれば良いのかわかりません。
最初のラジオボタンのnameが同じですし・・。
Java側で受け取った値を戻すのもまだよくわかりません。
サーブレット初心者なので(Javaもですが)
もうちょっと具体的に教えて頂けないでしょうか?

補足日時:2007/11/27 21:28
    • good
    • 0

今環境ないので試してませんが、


Java 側で受け取ったものを戻すという方法は3種類ぐらいあります。
「RequestDispather による転送」「request 属性の利用」「PrintWriterによる出力」など
ですが、ここは form の action でサーブレットを指定するのではなく JSP ファイル(そのファイル自身)を指定してみては。
JSP にはスクリプトレット、宣言、式 の3つがあり
スクリプトレットに Java のコードを記述できます。そこでたとえば
分かりやすい例で
%>
String s = null;
if (request.getParameter("namae").equals("three")) {
s = request.getParameter("test3");
}...
%>
...
<INPUT type="text" name="test4" value="<%=s%>" />
Html タグもあってるかどうか試してません。
もっと良いアルゴリズムあるでしょうけど色々やってみてください。
    • good
    • 0
この回答へのお礼

ありがとうございます。
ようやく説明されている内容がわかりかけてきました。
早速試してみます、

お礼日時:2007/11/28 21:07

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