• 締切済み

URLにパラメータがついてしまうんです・・・

何方か英知をお貸し下さいませ。。。 (要望) web画面にコンボボックスが一つ有り、商品コード+商品名(例.100 ポルシェ)を一つ選択した状態で、更新か削除ボタンを押して、変更したり、削除したりしたい。 つまり、formの送信先をボタンによって変えたいのです。 (現状) 以下のjavascriptソースをservletに埋め込んでいるのですが、URLにパラメータがひっついてしまって、各処理実行クラスにうまくpostされません。 例.http://****/Servlet/**?box=100%A%A%D%B%S%S ~~~~~~~~~~~~~~~~~~~~ ----<HEAD>----- <script language="JavaScript"> <!-- function update() {   document.formname.action="変更処理実行class";    } function delete() {   document.formname.action="削除処理実行class";    } --> </script> ----</HEAD>----- <form method="post" name="formname">   ここにコンボボックス </form> ボタンには <input type="submit" value="update" onClick="update()"> <input type="submit" value="delet" onClick="delete()"> としています。 各処理実行classでgetParameter()して、コンボボックスで選択した値を取得するようにできませんでしょうか? よろしくお願いします。

みんなの回答

  • mkim
  • ベストアンサー率67% (25/37)
回答No.1

こんなん考えてみました。 どうでしょう? ----<HEAD>----- <script language="JavaScript"> <!-- function update() {   document.formname.action="変更処理実行class"; document.formname.submit(); //追加 } function delete() {   document.formname.action="削除処理実行class";   document.formname.submit(); //追加 } --> </script> ----</HEAD>----- <form action="" method="post" name="formname"> //action=""追加   ここにコンボボックス <input type="button" value="update" onClick="update()"> <input type="button" value="delet" onClick="delete()"> </form> 考えたイメージでは、formタグの中にボタンを入れてしまう。 これでIEでもnetscapeでも大丈夫だと思ったからです。 次にボタンが押されると、formのactionに処理させたいclassファイルを 指定します。 ほんでもって、そのフォームをsubmitする感じでうまいこといかないでしょうか? ちょっと、テストしてないので何ともいえませんが。。。 がんばってください。

ayumix-ayu
質問者

お礼

ご丁寧に、ソースまで書いてくださって、ありがとうございます。 mkimさんのソースで <input type="button" …> を <input type="submit" …> にしてみると、テストはうまく行きました! さっそく、Javaのソースに埋め込んでみますね。

関連するQ&A