Как перезагрузить набор данных в JQuery DataGable плагин? - PullRequest
6 голосов
/ 06 августа 2011

Здесь я работаю с плагином таблицы данных jquery на странице asp.net

В настоящее время я работаю с таблицей, которая обновляется на странице в зависимости от действий пользователя. Пользователи могут ввести строку поиска, и таблица откроется в новом DIV с результатами. У меня проблемы с настройкой таблицы для правильной работы после ее инициализации. Я пытался использовать fnDestroy, а также fnClearTable, но столкнулся с несколькими различными проблемами.

При использовании fnClearTable я получаю эту ошибку при попытке перезагрузить таблицу:

" Предупреждение DataTables (таблица id = 'add_assets_table'): невозможно повторно инициализировать DataTable. Чтобы получить объект DataTables для этой таблицы, пожалуйста, не передавайте аргументы функции dataTable () или установите для bRetrieve значение true. В качестве альтернативы, чтобы уничтожить старую таблицу и создать новую, установите для bDestory значение true (обратите внимание, что через API можно внести много изменений в конфигурацию, которая обычно намного быстрее)."

1 Ответ

6 голосов
/ 10 августа 2011
if (typeof oTable == 'undefined') {
            oTable = $('#example').dataTable( {
                "aaData": [
                    /* Reduced data set */
                    [ "Trident", "Internet Explorer 4.0", "Win 95+", 4, "X" ],
                    [ "Trident", "Internet Explorer 5.0", "Win 95+", 5, "C" ],
                    [ "Trident", "Internet Explorer 5.5", "Win 95+", 5.5, "A" ],
                    [ "Trident", "Internet Explorer 6.0", "Win 98+", 6, "A" ],
                    [ "Trident", "Internet Explorer 7.0", "Win XP SP2+", 7, "A" ],
                    [ "Gecko", "Firefox 1.5", "Win 98+ / OSX.2+", 1.8, "A" ],
                    [ "Gecko", "Firefox 2", "Win 98+ / OSX.2+", 1.8, "A" ],
                    [ "Gecko", "Firefox 3", "Win 2k+ / OSX.3+", 1.9, "A" ],
                    [ "Webkit", "Safari 1.2", "OSX.3", 125.5, "A" ],
                    [ "Webkit", "Safari 1.3", "OSX.3", 312.8, "A" ],
                    [ "Webkit", "Safari 2.0", "OSX.4+", 419.3, "A" ],
                    [ "Webkit", "Safari 3.0", "OSX.4+", 522.1, "A" ]
                ],
                "aoColumns": [
                    { "sTitle": "Engine" },
                    { "sTitle": "Browser" },
                    { "sTitle": "Platform" },
                    { "sTitle": "Version", "sClass": "center" },
                    {
                        "sTitle": "Grade",
                        "sClass": "center",
                        "fnRender": function(obj) {
                            var sReturn = obj.aData[ obj.iDataColumn ];
                            if ( sReturn == "A" ) {
                                sReturn = "<b>A</b>";
                            }
                            return sReturn;
                        }
                    }
                ]
            } );
    }
    else {
        var dataset = [
                    /* Reduced data set */
                    [ "Trident", "Internet Explorer 4.0", "Win 95+", 4, "X" ],
                    [ "Trident", "Internet Explorer 5.0", "Win 95+", 5, "C" ],
                    [ "Trident", "Internet Explorer 5.5", "Win 95+", 5.5, "A" ],
                    [ "Trident", "Internet Explorer 6.0", "Win 98+", 6, "A" ],
                    [ "Trident", "Internet Explorer 7.0", "Win XP SP2+", 7, "A" ],
                    [ "Gecko", "Firefox 1.5", "Win 98+ / OSX.2+", 1.8, "A" ],
                    [ "Gecko", "Firefox 2", "Win 98+ / OSX.2+", 1.8, "A" ],
                    [ "Gecko", "Firefox 3", "Win 2k+ / OSX.3+", 1.9, "A" ],
                    [ "Webkit", "Safari 1.2", "OSX.3", 125.5, "A" ],
                    [ "Webkit", "Safari 1.3", "OSX.3", 312.8, "A" ],
                    [ "Webkit", "Safari 2.0", "OSX.4+", 419.3, "A" ],
                    [ "Webkit", "Safari 3.0", "OSX.4+", 522.1, "A" ]
                ];
        oTable.fnClearTable(0);
        oTable.fnAddData(dataSet);
        oTable.fnDraw();

    }

fnClearTable () используется для очистки таблицы.fnAddData () используется для добавления нового набора данных.fnDraw () перерисовать структуру таблицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...