jQuery ".clone()" を使用して新しい行を追加するフォームがあります。すべてが素晴らしいように見えますが、拘束力の問題があります。基本的に、初期化では、jQuery の ".datepicker()" 関数を 1 つのフィールド (クラスに基づく) に使用します。「.clone()」を単独で使用すると、新しいアイテムで「.datepicker()」機能を使用できません。「.clone(true)」を使用すると機能が得られますが、クローンされた行の場合、実際にクリックされた行ではなく、クローンされた行の日付が入力されます。
バインド解除/再バインドを試みましたが、どれも機能しません。では、jQuery の楽しさをすべて適切に機能させながら、新しい行をフォームに追加するにはどうすればよいでしょうか?
一番
編集 1 (jQuery):
関数 addLineItem(){ $('#charges_table tr:last').clone(true).insertAfter('#charges_table tr:last'); } $(関数(){ $('.date_pick').datepicker({"numberOfMonths": 2}); $("#add_line_item").bind('クリック',関数(イベント){ event.preventDefault(); addLineItem(); $('.date_pick').datepicker('destroy'); $('.date_pick').datepicker(); })) }))
参考までに、私はクラスにのみバインドしており、HTML 要素は ID を使用していません。