5

データ可能 ( http://www.datatables.net )、jQuery、および Firefox に問題があります。

上にボタンがあるjQueryデータテーブル(id="equipmentList")があります:

<html:button styleId="deleteButton" property="delete" value="<%= buttonDelete %>" disabled="disabled" />

データテーブルの列を並べ替えるときに、ボタン (ボタンdeleteButton) を無効にしたいので、次のコードを書きました。

$('#equipmentList th').click( function() {
    hideButtonEditAndDelete();
});

function hideButtonEditAndDelete() {
    $("#modifyButton").attr("disabled", "disabled");
    $( "#deleteButton" ).attr("disabled", "disabled");

//fix for firefox

if($.browser.mozilla){
    $("#modifyButton").addClass('ui-state-disabled');
    $("#deleteButton").addClass('ui-state-disabled');
}}

並べ替えが終了するまで、すべてがうまくいきます。その後、ボタンが jQuery によって有効になるためです。または、他の何か。ボタンを無効にするために、並べ替え順序の最後にキャプチャイベントを探しています

4

1 に答える 1

7

テーブルが再描画されるたびに作成されるコールバックがあり、fnDrawCallback でアクセスできます。

$('#someTable').dataTable({
        "fnInitComplete": function() {
            // after table is intialised do something here
        },
        "fnDrawCallback": function() {
            // after table is redrawndo something here
            console.log("redrawn");
        },
        "bDestroy": true,
        "bAutoWidth": false,
        "bPaginate": false,
        "sScrollY": "242px",
        "bLengthChange": false,
        "bInfo": false,
        "bFilter": false,
        "aaSorting": [[2, 'asc']],
        "aoColumns": [
            { "sSortDataType": "dom-checkbox", "sWidth": "3%" },
            { "bSortable": true, "sWidth": "8%" },
            { "bSortable": true, "sWidth": "10%" },
            { "bSortable": true, "sWidth": "15%" },
            { "bSortable": true, "sWidth": "8%" },
            { "bSortable": true, "sWidth": "9%" },
            { "bSortable": true, "sWidth": "6%" },
            { "bSortable": false, "sWidth": "2%" },
            { "bSortable": false, "sWidth": "7%" },
            { "bSortable": false, "sWidth": "13%" },
            { "bSortable": false, "sWidth": "2%" },
            { "bSortable": false, "sWidth": "7%" },
            { "bSortable": false, "sWidth": "10%" }
        ]
    });

コールバックの詳細については、こちらをご覧ください:

http://datatables.net/usage/callbacks

于 2011-01-14T13:18:45.990 に答える