私はより動的な製品と数量ピッキング方法を作成しようとしています。だから、何かを選ぶと、それは新しい選択行を作成し、それを選択すると、何度も何度も新しい行が作成されます。最後の現在の選択が変更されたときに新しい選択行を作成する方法は?
基本的に同じ方法が投票システムのFaceBookにあります。
私は多くのバリエーションを試しましたが、望みどおりに動作しません。最初のコードは開始時に1行作成されましたが、それ以降は動作を停止しました。現在のコードは新しい行を作成しますが、最初の行が変更されたときにのみ作成されます。
これは私がこれまで持っているものです:
create_new_row = function() {
var table = $('#products_table'),
last_row = $(table).find('tr:last')
last_row_select = $(last_row).find('select'),
new_row = $(last_row).clone();
// This part is brutal, could be optimized, but not a priority
$(new_row).find('option:selected').removeAttr('selected');
$(new_row).find('input[type="text"]').val(1);
$(new_row).appendTo($(table));
};
$('#products_table tr:last select').change(function() {
create_new_row();
});
私の最後の手段は、おそらく私が正しい最後の行を設定するクラスを使用します、ということです。しかし、フォームが投稿されると、PHP側もそれを行う必要があります。これは私が使いたい解決策ではありません。
あなたがしています変更イベントをテーブルの最後の行に割り当て、その行にアタッチしたままにします。イベントをその行から移動したい場合は、イベントをイベントから削除してから、最後の新しい行が変更イベントを取得するように更新する必要があります。 – j08691