• 締切済み

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()して、コンボボックスで選択した値を取得するようにできませんでしょうか? よろしくお願いします。

  • Java
  • 回答数1
  • ありがとう数6

みんなの回答

  • 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

  • 変数の記述について教えてください。

    こんにちは。 ご指導のほど、宜しくお願い致します。 javascriptで<form>のname="menu"を変数:formnameに 代入し、実行するように記述をしたいのですが どうもうまくいきません。 誤りの部分を教えて下さい。 <script Language="JavaScript"> <!-- var formname="menu"; // 本登録検索============================================== function itiran_onClick(){ document.+formname+.action" = "itiran.asp"; document.+formname+.submit()"; } ============================================== --> </script> <中省略> <form action="" method="post" name="menu"> <input type="text" name="TEST" value="1"> <input type="bottun" value="次へ" onclick="itiran_onClick()"> </form>

  • ボタン別のダイアログ表示について

    1つのcgiで、その都度押されるsubmitボタンにあわせてダイアログを表示させていです。 今、「更新」ボタンと「削除」ボタンがあり、 両方とも同じcgiでプログラム内で更新と削除を切り分けています。 <form method=post action="del_up.cgi"> <input class="button" name="update" type="submit" value="更新"> <input class="button" name="delete" type="submit" value="削除"> これに、 (1)更新を押した場合のダイアログ window.confirm("更新しますか?"); (2)削除を押したときのダイアログ window.confirm("削除しますか?"); のような感じで表示させたいのですが、可能でしょうか?

  • confirmの分岐について

    掲示板の記事を削除するとき、JavaScriptを使って確認ダイアログを 出させたいと思ってます。 しかし、確認ダイアログは出るものの、「いいえ」を押しても削除を 実行してしまって困っています。 下記の関数に分岐が足りないのはわかるのですが、 どうすれば分岐した上でcgiを叩いてくれるのかわかりません。 どうか教えてください。m(_ _)mペコリ ■JavaScript function DEL0(){ window.confirm("削除しますか?") } ■BODY <form action="bbs.cgi" method="post">    :    : <input class="button" name="category_delete" type="submit" value="削除する" onClick="DEL()">    :    : </form>

  • submitがおされた同時に JavaScript の処理は可能?

    質問のとおりですが、 <script>   function push(){    ★処理内容   } <script> <from action="/test/servlet/sample" method="post"> <input type="submit" valeu="ボタン" onclick="push()"> </from> でこの時 submit が押されたと同時にJavaScriptの処理も一緒に実行させたいのですが、可能でしょうか? ★の処理内容はsubmitボタンを1回押したらまたもう一回submitボタンを押されたようにする。つまりボタンを1回押したら2回分押したことと同じようにする。 とこんなかんじの処理なんですが…。 アドバイスお願いします。

  • ボタンでパラメータを渡すには

    下記の場合、ボタンでフォーム内のパラメーターをリンク先に渡すにはどうしたらいいでしょうか?どなたかご教授下さい。 --------------------------------------------------- <form action="login.html" name="Form1" onsubmit="return checkItem(Form1)"> <input type="text" name="userId" size="24"><br> <input type="password" name="password" size="24"><br> <input type="submit" value="ログインする"><br> <input type="button" value="過去のデータを見る" onClick="location.href='history.html'"> </form> ---------------------------------------------------

    • ベストアンサー
    • HTML
  • formの送信ボタンクリック後、別ウインドウ表示

    お世話になります。 現在下記の指定でPDFを表示しています。 <INPUT type="submit" name="submit" value="送信" onClick="form.action='tcpdf/pdf.php';return true" class="button_order"> これをクリック後、別ウインドウでPDFを表示したいのですが、 onClick="form.action='tcpdf/pdf.php';return true"の部分を onClick="form.action='tcpdf/pdf_sample.php';target='_blank'"とかにしても うまくいきせん。 ボタンはもう一つあるので、 <INPUT type="submit" name="submit" value="戻る" onClick="form.action='201504_1_2.php';return true" class="button_re-selection"> 出来れば、送信ボタンのみの設定を別ウインドウ表示にしたいです。 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • フォームの指定

    いつもお世話になっております。 早速ですが、呼び出した関数にフォーム名を渡す方法が 判らなく困ってしまってます。 説明より、ソースを見ていただいたほうが 早いと思いますので以下に記述いたします。 function Confirm(msg,formname,submitname) { if (confilm(msg)) { document.formname.submitname.clic(); } } <a href="#" onClick="Confirm('OK','form1','sub1');">テキスト1</a> <a href="#" onClick="Confirm('キャンセル','form2','sub2');">テキスト2</a> <form action='index.html' name='form1'> <input type='submit' name='sub1' value='ok'> </form> <form action='index.html' name='form2'> <input type='submit' name='sub2'> </form> //--------ここまで---------- 上記のスクリプトで、フォーム名やボタン名を Click();関数へ渡したいのですが、 どのように名前を渡すのか判りません。 変数ではなくオブジェクト名だから this.formnameなど試してみたのですが、 頓珍漢なのか、さっぱりでした。 エラーメッセージは "document.formname.submitnameはNullまたはオブジェクトではありません"というメッセージです。 初心者な質問で大変申し訳ありませんが よろしくお願い致します。

  • 一度しか押せないボタンについて

    以下のように一度しか押せないボタンを作ったのですが、すると今度はFORMで指定したactionが実行されません。どうしたらよいでしょうか。 <FORM action="...../~.cgi"><INPUT type="submit" value=" 退 会 " onClick="alert('退会します!!');this.disabled='true';this.value='処理中です'"></FORM>

  • Comfirm応答の後処理

    こんにちは、現在以下のようなHTMLを書きかけています。 やりたいことは、設定ボタンと消去ボタンがあり、それぞれ同じcgiを起動するけれど、 消去ボタンを押したときだけは確認のダイアログボックスを表示させたい。 そしてダイアログボックスでキャンセルを選ぶとcgiは実行しない。 設定ボタンを押したときはダイアログボックスは出さずにcgiを実行する。 で、試行錯誤しながらやってみているのですが、キャンセルを選んでも結局は cgiを実行してしまうので、どう書けばいいのか教えてください。 #ここになにか入れて制御できるのかなぁ?#の部分に何か書いて制御できますか? よろしくお願いします。 <script language="JavaScript"> <!-- function startConfirm(){ confirm("選択したものを削除します。よろしいですか?");    #ここになにか入れて制御できるのかなぁ?# } // --> </script> </head>     :     : <form method=post action="next.cgi"> <input type="checkbox" name="select1">選択肢     :     : <input type="submit" name="sub_set" value="設定"> <input type="submit" onClick="startComfirm()" name="sub_del" value="消去"> </form>

  • onClick="this.form.submit

    ・下記のようなformがあるのですが、 onClick="this.form.submit();" disabledの意味を教えてください ・クリックしたら、このフォーム内容を送信? ・アクション先も指定していないのに、処理はどこへいくのでしょうか? ・また、disabledは? ずっと押せない? <form name="hoge" method="POST"> <input name="hoge" type="button" class="button" value="piyo" onClick="this.form.submit();" disabled> </form>

専門家に質問してみよう