sAjaxSource не выполняется в IE - PullRequest
0 голосов
/ 05 октября 2010

Я использую серверную часть jquery datatables в своем приложении MVC. Когда я ставлю точку останова на метод контроллера «FillTable», выполнение выполняется только в первый раз в IE. Если я возвращаюсь и перезагружаю страницу, и данные отличаются, функция не вызывается. Когда я пробую Firefox, точка перерыва попадает на каждую перезагрузку без каких-либо проблем. Вот мой код.

$(document).ready(function() {
    $('.details').dataTable({
        "bServerSide": true,
        "bProcessing": true,
        "sPaginationType": "full_numbers",
        "sAjaxSource": "../PrepareStatements/FillTable",
        "aoColumns": [
            { "sTitle": "#" },
            { "sTitle": "Date" },
            { "sTitle": "Remarks" },
            { "sTitle": "Dr/Cr" },
            { "sTitle": "Amount"}]
    });
});

Мои данные

<table width="100%" class="details"  id="eDataTable"></table>

Но если я изменю количество отображаемых строк, щелкните по нумерации страниц или выполню поиск, он работает. Может кто-нибудь, пожалуйста, помогите мне в этом.

1 Ответ

2 голосов
/ 05 октября 2010

Хорошо, я нашел решение.Вы должны добавить POST, поскольку IE стремится кешировать результаты данных с помощью запросов GET.Я добавил следующее в свою функцию, и теперь она работает нормально.

$(document).ready(function() {
    $('.details').dataTable({
        "bServerSide": true,
        "bProcessing": true,
        "sPaginationType": "full_numbers",
        "sAjaxSource": "../PrepareStatements/FillTable",
        "fnServerData": function(sSource, aoData, fnCallback) {
            $.ajax({ "dataType": 'json',
                "type": "POST",
                "url": sSource,
                "data": aoData,
                "success": fnCallback
            });
        },
        "aoColumns": [
            { "sTitle": "#" },
            { "sTitle": "Date" },
            { "sTitle": "Remarks" },
            { "sTitle": "Dr/Cr" },
            { "sTitle": "Amount"}]
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...