web-dev-qa-db-ja.com

HTML-フォーム送信ボタン確認ダイアログ

これは一般的なフォームコードです

<form name="search_form" action="" method="POST">
<input type="text" name="search_text">          
<input type="submit" name="search_bt" value="Go">
</form>

「はい」\「いいえ」または「確認」\「キャンセル」などの確認ダイアログを表示する方法がありますか?.

私がドンと考えた一つの方法は、CSSレイヤーとJavaScriptとPHPを使用することです。これらはボタンにisset(){} chechkがあり、設定すると2つのボタンとonclick=func() JS関数で表示されるDivを表示しますこれらのボタンにはphp変数(フラグ)が設定されており、if(flag){}を実行してコードを続行またはスキップできます...

まあそれはうまくいくだろうし、プラスのポイントは、テーマのあるダイアログボックスを持つことができるが、私は自分の人生をもっと楽にしたい...

20
Moon

Formタグ自体の1行で行うこともできます

<form action="exampleHandlerPage.php" method="post" onsubmit="return confirm('Are you sure you want to submit?');">
65
acqu13sce

1つのフォームに2つ以上の送信ボタンがある場合:

<input type="submit" value="Edit">
<input type="submit" name="delete" value="Delete" onclick="return confirm('Confirm, please.');">

ダイアログは、Deleteボタンをクリックしたときにのみ表示されます。

3
matepal297

Divなしでraw javascriptを使用しています...

これはfunctionにすることができます

function confirmSubmit() {
  if (confirm("Are you sure you want to submit the form?")) {
    document.getElementById("FORM_ID").submit();
  }
  return false;
}

そして、フォームのonsubmitイベントから、またはonclickbuttonイベントから、その関数を呼び出すことができます。

ところで、 JQuery について聞いたことがありますか。 JavaScriptをコーディングするための快適で美しい方法を提供する多くの有用なものを備えたJSライブラリ。

やりたいことの例として、これを 確認ダイアログ from JQuery の例として

2
Garis M Suero