さて、またもや jQuery の統一テーマで問題が発生しました。http://uniformjs.com/テキスト入力、ドロップダウン、およびボタンを使用して行を複製して、行を追加 (複製) または削除しています。問題は、行を複製すると、新しい行のドロップダウン選択を変更できないことです。均一機能を無効にすると機能します。
<!---<script type="text/javascript" charset="utf-8">
$(function(){
$("input:text, input:file, select, textarea, input:button").uniform();
});
</script>--->
これが私のコードです。ユニフォームの更新もうまくいかないようです。
//
id=0;
$("table#customers_tab img.remove").live("click", function (event) {
$(this).parents("tr").remove();
var remove_id = event.target.id;
var index = remove_id.substring(6);
var table = document.getElementById("customers_tab");
for(var i=parseInt(index); i<table.rows.length;i++){
$($('table#customers_tab tr')[i]).find("img.add").attr("id","add"+i);
$($('table#customers_tab tr')[i]).find("img.remove").attr("id","remove"+i);
}
});
$("table#customers_tab img.add").live("click", function (event) {
id++;
var master = $(this).parents("table#customers_tab");
var add_id = event.target.id;
var index = add_id.substring(3);
var prot = $($('table#customers_tab tr')[index]).clone();
var incr = parseInt(index)+1;
prot.find("img.add").attr("id","add"+incr);
$('.feature').live('change',function(){ ////SOLUTION HERE
$.uniform.update("select"); ////
}); ////
$($('table#customers_tab tr')[index]).after(prot);
var table = document.getElementById("customers_tab");
for(var i=incr+1; i<table.rows.length;i++){
$($('table#customers_tab tr')[i]).find("img.add").attr("id","add"+i);
$($('table#customers_tab tr')[i]).find("img.remove").attr("id","remove"+i);
}
$.uniform.update(); //NOT WORKING
});
$("#delAllCustomers").live("click", function (event) {
$("#customers_tab").children().remove();
});
//
これは私の問題と非常に似ていますが、私の問題は解決しませんでした。要素のブロックを複製するjquery. select 要素の動作がおかしい