この例を見てください: http://jsfiddle.net/9NXHq/15/
HTML で定義された 1 つのボタンから始まります。次に、jQuery を使用してそのボタンを複製し、テキストを変更して、元のボタンの後に追加します。新しいボタンの表示がおかしくなっていることに気付きましたか? しかし、アイコンが変更されるボタンをクリックすると、それ自体がクリーンアップされます! すでにjQueryされている要素を複製する適切な方法は何ですか?
たとえば、データのリストと「追加」ボタンを想像してください。[追加] をクリックすると、ボタンやオートコンプリートなどの jQueryed 要素を含む (たとえば、非表示のテンプレート行からの) データの行全体が複製されます。この新しい行の要素が適切に機能するようにするには、どのように「再構成」する必要がありますか? ?
HTML
<a id="btn">This is a button.</a>
CSS
/* Standard jQuery UI (1.8.16 in this case). */
JavaScript
/* Standard jQuery (1.7.1 in this case). */
var btn = $("a#btn");
var btn2 = null;
btn.button({ icons: { primary: "ui-icon-plus" } });
btn.click(function ()
{
$(this).button({ label: "Clicked!", icons: { primary: "ui-icon-check" } });
});
btn2 = btn.clone();
btn2.click(function ()
{
$(this).button({ label: "Clicked! (2)", icons: { primary: "ui-icon-check" } });
});
btn2.text(btn2.text() + " (2)");
btn2.insertAfter(btn);
//Need to re-constitue btn2 as a button.
btn2.button();