0

NEVERMIND....私はライブで使用しましたが、うまくいくようです...

フォーム要素を含むテーブルがあります。ユーザーが新しい値を入力して追加ボタンをクリックすると、テーブルの最後の行が複製され、入力フィールドが新しい情報で更新されます。さらに、各行には削除アイコンが含まれています。ユーザーが削除アイコンをクリックすると、それが属する行が削除されます。

私はすべての作業をしています...

を除いて、複製された行の削除アイコンは機能しません。クリックしても何も起こらず、さまざまなことを試しましたが、その部分を理解できないようです... 1か月前のようにjqueryを使い始めたばかりで、明らかな何かが欠けていると思いますが、何がわからない. ..

私はjsfiddleにコードを置き、誰かが助けてくれることを望んでいます:

http://jsfiddle.net/sMqcB/

4

2 に答える 2

0

それらはDOMに新しく注入された要素だからです。既に定義した既存のクリック イベントについては認識しません。

解決策: jQuery のonメソッドを使用します。

変化する

$('img.seminars-faux-remove').click(function() {
    $(this).closest('tr').remove();
});

$(document).on("click",'img.seminars-faux-remove',function() {
    $(this).closest('tr').remove();
});

jQuery onは、現在および将来の要素に対して機能します。このメソッドは、jQuery 1.7 以降で使用できます。古いバージョンの jQuery を使用している場合は、liveの使用を検討してください。ただし、 1.7+ を使用している場合は、jQuery on を使用する必要があります。

于 2012-07-28T17:35:44.847 に答える
0

.clone(true)の代わりに を使用することで、機能を維持できます.clone().clone()ドキュメント、特にパラメーターの意味を参照して[withDataAndEvents]ください。

デモ

于 2012-07-28T17:37:33.057 に答える