0

フォームを含む Web ページがあり、それらのフォームの 1 つが送信されるたびに、または後でページに追加されたフォームが送信されるたびにハンドラーをトリガーしたいとします。どちらの方法が優れていますか:

$('form').on('submit', handler);

また

$(document).on('submit', 'form', handler);
4

2 に答える 2

0

どちらが優れているかではなく、どちらがニーズにより適しているかです。どちらの方法も優れており、用途があります。

前者はフォーム内で発生する送信のみをリッスンし、後者はすべての送信をリッスンし、それらが にバブリングするのを待ってからdocumenthandlerコールバックを起動します。

では、 のすべての場所で発生する可能性があるoronsubmitのように大きな違いはないことに注意してください。送信は でのみ発生しますが、ドキュメントまでずっとバブルします。mousemoveclick<body><forms>

于 2013-01-27T22:23:52.273 に答える
0

後で動的にページに追加するフォームに適用したい場合、後者はまったく機能する唯一のバージョンです。

(正直なところ、ページに何千ものフォームがない限り、パフォーマンスの違いはそれほど重要ではありません)

于 2013-01-27T22:24:53.147 に答える