searchResultsTable-との間で行を移動しようとしている 2 つのテーブルがありselectedCustomersTableます。これは非常に単純な作業です。2 つのテーブル間で行を連続的に前後に移動できるようにするだけです。
複数の行を からsearchResultsTableに、selectedCustomersTableまたはその逆に移動します。そのため、ユーザーは追加ボタンと削除ボタンを使用して、2 つのテーブル間で行を連続的に前後に移動できます。
追加ボタンは、 でsearchResultsTable行が選択されていて、それらを に移動する場合に使用しますselectedCustomersTable。それはうまくいきます。
削除ボタンは、 で行を選択し、selectedCustomersTableそれらを削除したり、 に戻したりするためのものsearchResultsTableです。それは機能していないようです。行を数回前後に移動した後、イベントが失われ、機能しなくなったようです。jquery 1.7 でイベントを使用しようとして.onいますが、うまくいきません。「2 つのテーブル間で行を移動する」機能は何度も機能しません。1 回でうまくいくようなものですが、何度もうまくいくわけではありません。
ここに私のjQueryコードがあります - 誰かが問題が何であるかを見て、これを何度も何度も動作させる方法を提供できますか? 何度も何度も-意味-ユーザーがそうしたい場合は、2つのテーブル間で行を永久に前後に移動します。
<script type="text/javascript">
    $(function () {
        $('#searchResultsTable').on('click', function (e) {
            bindTableEvents();
        });
        $('#selectedCustomersTable').on('click', function (e) {
            bindTableEvents();
        });
        bindTableEvents();
        function bindTableEvents() {
            var $t1 = $('#searchResultsTable');
            var $t2 = $('#selectedCustomersTable');
            alert('in');
            setupTable($t2);
            setupTable($t1);
        }
        function setupTable($table) {
            $table.initializeTable({
                navigate: {
                    control: { keyboard: true, mouse: true },
                    select: { multiple: true }
                }
            });
            $table.on('mouse', function (e, event) {
                if (event.which == 1 && !event.ctrlKey && !event.shiftKey) {
                    var $selected = $table.selected();
                    if ($selected.length == 1) {
                        !$selected.hasClass('active');
                    }
                }
            });
            $table.on('keyboard', function (e, event) {
                var $selected = $table.selected();
                switch (event.which) {
                    case 13:
                        //ENTER
                        if ($selected.length == 1) {
                            !$selected.hasClass('active');
                        }
                        if ($selected.length > 0) {
                        }
                        break;
                    case 46:
                        //DELETE
                        if ($selected.length > 0) {
                        }
                        break;
                }
            });
        }
        $('#addButton').click(function () {
            var selectedRows = $('#searchResultsTable').selected();
            $('#selectedCustomersTable').append(selectedRows.removeClass('focus').remove());
        });
$('#removeButton').click(function () {
            var selectedRows = $('#selectedCustomersTable').selected();
            $('#searchResultsTable').append(selectedRows.removeClass('focus').remove());
            });
    });
</script>