フォームを操作する場合、フォームの送信をトリガーせずに特定のアクションを実行するボタンを追加することが必要になる場合があります。この記事では、提供されたコード スニペットの「削除」ボタンなどの特定のボタンが Firefox でフォームを送信できないようにし、他のボタンにはフォームの送信を許可する方法について詳しく説明します。
指定された HTML フォームでは、「追加」ボタンは正しく機能し、「削除」ボタンをクリックするとフォームが送信されます。この動作は Firefox に固有であり、HTML5 ボタン要素のデフォルト動作が原因で発生します。
HTML5 ボタン要素は、W3 仕様に従って、デフォルトのタイプ「送信」を継承します。 。これは、特に明示的に指定されていない限り、ボタンには、そのボタンを含むフォームを送信する固有の動作があることを意味します。
「削除」ボタンがフォームを送信しないようにするには、次のようにします。デフォルトのタイプをオーバーライドする必要があります。これは、タイプを「button」として明示的に指定することで実現できます。
<button type="button" onclick="removeItem(); return false;">Remove Last Item</button>
type 属性を「button」に設定することで、ボタンが標準のボタン要素のように動作し、フォームを送信しないように指示されます。ただし、追加の return ステートメントも含める必要があります。
return false;
この return ステートメントは、ボタンのデフォルトのアクション (フォームの送信) の発生を防ぎます。これら 2 つの要素を組み合わせると、フォームを送信せずに、[削除] ボタンによって目的の JavaScript 関数が確実にトリガーされます。
以上がFirefox でボタンがフォームを送信できないようにするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。