0

live関数は非推奨であり、代わりにonメソッドを使用する必要があることを読みました。

だから私は自分のコードを

$('form').live('submit', function (event) {})

$('form').on('submit', function (event) {})

そしてそれはもう動作しません:-)なぜ私は疑問に思っていますか?

ところで、フォーム要素は動的に追加されます。

4

2 に答える 2

2

代わりにこれを使用してください

$('body').on('submit', 'form', function (event) {})

メソッドのjqueryドキュメントのセクション直接イベントと委任イベントを確認してくださいon

于 2012-09-20T20:37:22.653 に答える
2

ページの読み込み時にDOMに存在する要素にイベントハンドラーをアタッチする必要があります。

$('body').on('submit', 'form', function(event) {
 ...
});

bodyに近い要素を置き換える必要がありますform。これにより、イベントは1レベルだけバブルアップする必要があるため、パフォーマンスが向上します。たとえば、次のようになります。

<div id="container">
  <form>
    ...
  </form>
</div>

次に、以下を使用します。

$('#container').on('submit', 'form', function(event) {
  ...
});

この情報はすべて、ドキュメントに記載されています。

于 2012-09-20T20:37:53.703 に答える