ホームページ  >  記事  >  ウェブフロントエンド  >  HTML 属性を超えて Javascript でフォーム送信イベントをリッスンするにはどうすればよいですか?

HTML 属性を超えて Javascript でフォーム送信イベントをリッスンするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-27 06:34:03276ブラウズ

 How Do I Listen to Form Submit Events in Javascript Beyond HTML Attributes?

JavaScript でのフォーム送信イベントのリッスン: HTML 属性を超えて

JavaScript でのフォーム送信の検出は、ユーザー入力とフォームの動作を制御します。 onClick や onSubmit などの HTML 属性を使用すれば十分ですが、カスタマイズと柔軟性が制限されます。この記事では、純粋な Javascript と共通ライブラリを使用してフォーム送信イベントをリッスンするための代替方法について説明します。

純粋な Javascript アプローチ

イベント リスナーをフォーム要素にアタッチするには、addEventListener を使用します。または、ブラウザのサポートに基づいたattachEvent:

<code class="javascript">var ele = /*Your Form Element*/;
if (ele.addEventListener) {
  ele.addEventListener("submit", callback, false); // Modern browsers
} else if (ele.attachEvent) {
  ele.attachEvent("onsubmit", callback); // Old IE
}</code>

ネイティブの送信イベントをキャンセルするには、コールバック関数内でpreventDefault()を使用します:

<code class="javascript">document.querySelector("#myForm").addEventListener("submit", function (e) {
  if (!isValid) {
    e.preventDefault(); // Stop form from submitting
  }
});</code>

ライブラリアプローチ

ライブラリ (例: jQuery) を使用する場合:

  • jQuery:
<code class="javascript">$(ele).submit(callback);</code>

Cross -ブラウザの互換性

addEventListener メソッドは広くサポートされていますが、古いブラウザではattachEvent が必要な場合があります。ブラウザ間の互換性を確保するには、必要に応じて両方の方法を使用してください。

以上がHTML 属性を超えて Javascript でフォーム送信イベントをリッスンするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。