• ベストアンサー

ボタンクリック-JSP判断

kuro_73の回答

  • kuro_73
  • ベストアンサー率28% (33/117)
回答No.2

>画面には、テキストとボタンが配置してます。 >Aボタンクリックで、テキストに何にも >値が入ってない場合は別のHTMLに移動し、 >何か値が入っている場合は テキストをクリアする処理をしたいのですが >上記のように、JSPで判断させようとしています。 テキストというのは、<INPUT>タグのテキストのことでしょうか? だとすると、JSPの使用方法の認識に誤りがあります。 JSPは表示する前にコンパイルしてHTML形式に吐き出すものなので、 表示されてしまったものの現在の状態を認識したり、 変更することはできません。 テキストという意味が、wkビーンのrtn_tmpというプロパティの値の意味であるならば、 まず wk.getRtn_tmp()==1 を wk.getRtn_tmp().equals("1") に変更する必要があります。 お書きになられてたソースでは、 wk.getRtn_tmp()==1 ならば、form.htmlに wk.getRtn_tmp()!=1 ならば、/servlet/jyohoya.kanri_Srvサーブレットに 移動するようになっています。 移動した先が真っ白なのは、 ・Servletにしか移動していない&&サーブレットにエラーがある (エラーというよりも、動作しているものの、正しいパラメーターを受け取っていないため、誤動作していて、PrintWriterをフラッシュしていない状態) ・<INPUT>を含む<FORM>のアクション先に移動している のどちらかだと思います。 前の方もかかれていましたが、 やりたい事が、はっきり見えません。もう少し詳しい情報をお願いします。

noname#2205
質問者

お礼

<説明、質問の補足>です。 ボタンクリックで、ブラウザからServletに リクエストが送信されます。そして、 ServletからBeanのインスタンス作成で Beanで処理をさせ、その後、Servletが JSPを呼び出す・・・・という 一連の流れがありますよね。 で、ボタンクリック後、テキストに入力があったか どうかを判断するのはBeanで処理するとして、 ServletがJSPをよぶか、HTMLを呼ぶか判断 するようにしたらいいのでしょうか??

noname#2205
質問者

補足

kuro_73さん、引き続き、有り難うございます。 >テキストというのは、<INPUT>タグのテキストのことでしょうか? >だとすると、JSPの使用方法の認識に誤りがあります。 >JSPは表示する前にコンパイルしてHTML形式に吐き出すものなので、 >表示されてしまったものの現在の状態を認識したり、 >変更することはできません。 そうです。 流れとしては。。。 入力画面(JSPで書いている)にINPUTタグのテキストと、ボタンがあって、 (1)もし、テキストになにかを入力した状態で ボタンを押すと同じJSPの画面を表示させるんですが、そのときは テキストはクリアして出したいのです。 (2)もし、テキストになにも入力されていない状態で ボタンを押したらHTMLの画面(入力画面と別の画面)に移動 させたいのです。 こんな感じで、伝わりますでしょうか。。。 >お書きになられてたソースでは、 >wk.getRtn_tmp()==1 ならば、form.htmlに >wk.getRtn_tmp()!=1 ならば、/servlet/jyohoya.kanri_Srvサーブレットに >移動するようになっています。 そうですね。。なんか認識不足、使用方法を間違ってる気がします。 よく分からなくなってきましたが、やりたいことを 端的に言うと、一つのボタンに、Resetの処理と移動の処理 の二つの機能を持たせたいってことだったのですが。。。 単純にボタンを二つわけたらいい、といえばいいのですが、、、 よろしくお願いします。

関連するQ&A

  • JSP + ラジオボタン

    JSP+Servlet+Beanで作ってます。 JBuilder5を使ってます。 JSPはラジオボタン、テキスト、ボタン等があります。 <INPUT TYPE = "radio" NAME = "r1" VALUE = "ins">A <INPUT TYPE = "radio" NAME = "r1" VALUE = "upd">B <INPUT TYPE = "radio" NAME = "r1" VALUE = "del">C としています。 たとえば、Bを選択時、ボタンクリックで Servletにリクエストを送信しますが、 Servletから再びJSPを呼び出し、画面を 表示するとき、ラジオボタンはBを選択 させたいのですが、どうしたらいいですか? FormタグのCHECKEDというオプションを どのように使えばいいのか教えていただきたいのですが。 テキストには、Beanでsetメソッド、 JSPでは、<jsp:getProperty・・・>を使って セットできているんですが、ラジオボタンも 同様ですか? @@@・・・JSPのタグを勉強しないといけないです。 @@@勉強不足です。

    • ベストアンサー
    • Java
  • JSP+Servletで終了ボタン

    JSPで、終了ボタンをクリックしたときに、 ブラウザを閉じる、といった処理は <INPUT TYPE = "submit" NAME="EXT" VALUE ="終了" onclick ="window.close();"> などでできるとあったのですが、 終了ボタンで、ページ(JSPではなく、 HTML)を移動する場合、onclick=以下に HTMLのアドレスを書いたらいいのでしょうか? やってはみたのですが、うまくいきませんでした。 うまくいかないというのは、 そのままServletにリクエストがわたるようで、 表示ページから何も移動しないということです。 また、<a href = "・・・></a>という リンクのタグもやってみましたが、 ランタイムエラーがでてしまいました。 何か外しているようでしたら、教えていただきたい のですが。。。。

    • ベストアンサー
    • Java
  • 携帯 JAVA JSP 画面遷移

    携帯のWebアプリを作成しており、ボタンごとに画面遷移させる方法を考えています。 以下はPC用に作成したJSP <script Language="JavaScript"> <!-- function inOut(flg){ if(flg){ lert("あ"); location.href='top.jsp'; }else{ alert("い"); location.href='top2.jsp'; } } // --> </script> <html> <head> <title>テスト</title> </head> <body> <form method="POST" action="top3.jsp"> <input type="button" name="in" onClick="inOut(true);" value="あ" /> <input type="button" name="out" onClick="inOut(false);" value="い" /> <input type="submit" name="back" value="う" /> </form> </html> 現状の問題点は2点あり、 1.携帯はJavaScriptが使用できない 2.<input type="button"~ とするとテキストボックスのような見栄え・機能になってしまう。 携帯Webアプリの場合、ボタンごとの画面遷移はどのように行えばよいのでしょうか?

  • jsp から servlet に

    パラメータをJSPからServlet に渡す所で、どうしても、null になってしまします‥。 主要な部分だけ書きます。 --jsp-- <jsp:useBean id="beanId" class="Bean" scope="request" /> <form method="POST" action="servlet"> <input type="submit" value="送信"> <input type="text" size="10" name="name"> --servlet-- import Bean; Bean bean = (Bean)request.getAttribute( "beanId" ); // ↑ここが、nullになってしまう。 --Bean-- public String getName() { return name; } public void setName( String name ) { this.name = name; } 考え方が違ってるかも知れないのですが‥。 よろしくお願いします。

    • ベストアンサー
    • Java
  • jspでファイルを読み込む

    jspでajaxを使ってファイルを読み込む処理がうまくいきません。 直接jspのページを見る場合、jspのアドレスが http://localhost:8080/xxx/sample.jsp となり処理もうまくいくのですが、javaのクラスファイル→sample.jspのようにサーブレットから値を受け取る場合にアドレスが http://localhost:8080/xxx/servlet/クラスファイル名?変数名=値 となり、この場合ファイルを読み込む処理がうまくいきません。 【ソースの一部】 function loadText(filename){ new Ajax.Updater( { success: "disp"}, filename, { method: 'get', onFailure: displayError} ); } <input type="button" value="ファイル読み込み" onClick="loadText('readfile.txt')"> <div id="disp"></div> readfile.txtのパスの書き方が悪いのかと思いいろいろ試しましたができませんでした。 アドバイスお願いします。

    • ベストアンサー
    • Java
  • jsp,servlet,beanの流れについて

    初歩の初歩の質問ですが、参考書等読んでいて混乱してしまっています。宜しくお願いします。 a.jsp(入力画面) a_servlet.java a_bean.java(setのみ) b.jsp(表示画面) b_servlet.java b_bean.java(get,setのみ) というファイルがある時のプログラムの流れは、 (1)a.jsp・・・画面を表示する。データを入力する。登録ボタンを押下する。 (2)a_servlet.java・・・(1)で登録ボタンを押下されたら、a.jspのデータを取得。a_bean.javaへ設定する。b.jspへ飛ぶ。 (3)a_bean.java・・・(2)によりデータが設定されている。 (4)b_servlet.java・・・a_bean.javaのデータを取得し、b_bean.javaに設定する。 (5)b_bean.java・・・(4)によりデータが設定されている。 (6)b.jsp・・・表示データをb_bean.javaより取得後、画面を表示する。削除ボタンを押下する。 (7)b_servlet.java・・・(6)で削除ボタンが押下されたらb.jspのデータを取得し、b_bean.javaへ設定する。 特にbファイルの処理順序で混乱しています。 上記のような流れで考え方は合っているでしょうか。 少々分かりずらいかもしれませんが、間違っていたら小学生でも分かるように教えてください。

    • ベストアンサー
    • Java
  • HPボタンの長さが異なる。

    下のボタンが マックの「IE4.5」「IE5.0」「ネスケ4.7」だとちゃんと奇麗に中央に表示されますが、 Windows「IE4.5」「IE5.0」はボタンの長さが異なり ガタガタになります。 windowsでも奇麗に並べるにはどうしたらいいのでしょうか? よろしくご指導お願いいたします。 テストでアップしてあるURLですのでご確認してください。 http://watn.jp/test/ <HTML> <HEAD> <TITLE>++++</TITLE> </HEAD> <!------------------- 中身-------------------> <center> 下のボタンがマックの「IE4.5」「IE5.0」「ネスケ4.7」だと<br> ちゃんと中央に表示されますが、Windows「IE4.5」「IE5.0」は<br> ボタンの長さが異なりガタガタになります。 <FORM> <INPUT TYPE="button" VALUE=" ●●・・◇◇◇   " onClick="window.location.href='kituke.html'"><br> <INPUT TYPE="button" VALUE="   ・・◇◇◇◇  " onClick="window.location.href='sadou.html'"><br> <INPUT TYPE="button" VALUE="   ・・◇◇◇◇◇ " onClick="window.location.href='buyou.html'"><br> <INPUT TYPE="button" VALUE=" ●●・・◇◇◇   " onClick="window.location.href='ivent.html'"><br> <INPUT TYPE="button" VALUE="   ・・◇◇◇◇  " onClick="window.location.href='tenjikai.html'"><br> <INPUT TYPE="button" VALUE=" ◇◇◇       " onClick="window.location.href='butai.html'"><br> <INPUT TYPE="button" VALUE=" ◇◇◇◇      " onClick="window.location.href='honten.html'"><br> <INPUT TYPE="button" VALUE=" ◇◇◇◇◇     " onClick="window.location.href='yono.html'"><br> </FORM> </center> </BODY> </HTML>

  • ボタンをクリックして、リンクを開きたい

    ボタンをクリックして、リンクを開きたいのですが <input type="button" value="yahooを表示する" onClick="location=http://www.yahoo.co.jp/"> をしても何も起りません。 出来れば、新しいブラウザで開きたくて、 <A href="http://www.yahoo.co.jp/" target="HOGE">yahooを表示する</a> と同じように、ボタンをクリックして開きたいので、ご教授お願いします。

    • ベストアンサー
    • HTML
  • ボタンの長さを変えたい(至急)

    <INPUT TYPE=BUTTON VALUE="最新100回グラフ" onClick="location.href='../grf/100.htm'"> <INPUT TYPE=BUTTON VALUE="最新50回グラフ" onClick="location.href='../grf/50.htm'"> このようなボタンの長さを揃えたいです。 スペースで調節するしかないのでしょうか?

    • ベストアンサー
    • HTML
  • JSPで使用不可

    JSPで表示しているテキストやボタンを (FORM INPUT TYPE のテキストもしくは Submitボタン) 使用不可にすることは可能でしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • Java