[解決済み】フォームが送信されないようにするには?
2022-03-29 09:01:40
質問
どこかに送信ボタンがあるフォームがあります。
しかし、どうにかしてsubmitイベントを「キャッチ」して、それが発生しないようにしたいのです。
何かいい方法はないでしょうか?
カスタムコントロールの一部なので、サブミットボタンを修正することができません。
どうすればいいですか?
他の回答とは異なり
false
は、あくまでも
部分
の答えになります。return文の前にJSエラーが発生した場合のシナリオを考えてみましょう...
html
<form onsubmit="return mySubmitFunction(event)">
...
</form>
スクリプト
function mySubmitFunction()
{
someBug()
return false;
}
戻り
false
は実行されず、どちらにしてもフォームは送信されます。また
preventDefault
を使用して、Ajax フォーム送信のためのデフォルトのフォームアクションを防ぐことができます。
function mySubmitFunction(e) {
e.preventDefault();
someBug();
return false;
}
この場合、バグがあってもフォームは送信されません!
あるいは
try...catch
ブロックを使用することができます。
function mySubmit(e) {
e.preventDefault();
try {
someBug();
} catch (e) {
throw new Error(e.message);
}
return false;
}
関連
-
[解決済み】Failed to load resource: net::ERR_FILE_NOT_FOUND loading json.js
-
[解決済み】ある要素を別の要素に移動させるには?
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] event.preventDefault() vs. return false
-
[解決済み] Webフォームのフィールド/入力タグでブラウザのオートコンプリートを無効にするにはどうすればよいですか?
-
[解決済み] ページを再読み込みせずにURLを変更するにはどうすればよいですか?
-
[解決済み] テキストボックスのEnterキーで、JavaScriptでボタンクリックをトリガーする
-
[解決済み] jQuery AJAX送信フォーム
-
[解決済み] ユーザーがEnterキーを押してフォームを送信できないようにする
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】SecurityError: オリジンを持つフレームがクロスオリジンフレームにアクセスするのをブロックした
-
[解決済み] 解決済み】clearInterval()が動作しない [重複] [重複]
-
[解決済み】webpack: モジュールが見つかりません。Error: 解決できない(相対パスで)
-
[解決済み】「Uncaught TypeError: Chromeで "Illegal invocation "が発生する。
-
[解決済み] [Solved] Uncaught TypeError: nullのプロパティ 'appendChild' を読み取ることができない。
-
[解決済み】Reactのeslintエラーはpropsの検証で見つからない
-
[解決済み】DOMException: サポートされているソースが見つからなかったため、読み込みに失敗しました。
-
[解決済み】リソースはドキュメントと解釈されるが、MIMEタイプはapplication/zipで転送される
-
[解決済み】Kendo Observable Bindingと併用する場合、Kendo Switch Labelsを変更することは可能ですか?[Kendo-UI]です。
-
[解決済み】未定義のプロパティ 'forEach' を読み取ることができない