jQuery Flexigrid с ASP.NET MVC - PullRequest
0 голосов
/ 01 июня 2010

Я пытаюсь использовать Flexigrid с ASP.NET MVC. Мне нужны все функции типа JSON (поиск, сортировка, поиск), за исключением того, что я использую foreach в своем представлении и циклы для генерации строк таблицы.

<table id="gllisting">
            <% foreach (var item in Model)
               { %>
            <tr>
                <td>
                    <%= Html.Encode(item.GLCODE) %>
                </td>
                <td>
                    <%= Html.Encode(item.DESCRIPT) %>
                </td>
                <td>
                    <%= Html.Encode(item.PL_BS) %>
                </td>
                <td>
                    <%= Html.Encode(item.LOCCODE) %>
                </td>
                <td>
                    <%= Html.Encode(item.SUBLEDGER) %>
                </td>
                <td>
                    <%= Html.Encode(item.SALUTATION) %>
                </td>
                <td>
                    <%= Html.Encode(item.DEPARTMENT) %>
                </td>
             </tr>
            <% } %>
        </table>

Теперь я использую блок скриптов, подобный этому

$(document).ready(function() {
    $("#gllisting").flexigrid({
        colModel: [
                { display: "Ledger Code", name: "glcode", width: 40, sortable: true, align: "left" },
                { display: "Description", name: "name", width: 180, sortable: true, align: "left" },
                { display: "Account Type", name: "ac_type", width: 120, sortable: true, align: "left" },
                { display: "Cash/Bank Code", name: "loccode", width: 130, sortable: true, align: "left" },
                { display: "Subledger", name: "subledgr", width: 80, sortable: true, align: "left" },
                { display: "Salutation", name: "salutation", width: 80, sortable: true, align: "left" },
                { display: "Department", name: "depmas", width: 80, sortable: true, align: "left" }],
        buttons: [
                { name: "Add", bclass: "add", onpress: test },
                { name: "Delete", bclass: "delete", onpress: test },
                { separator: true}],
        searchitems: [
                { display: "Ledger Code", name: "glcode" },
                { display: "Description", name: "name", isdefault: true}],
        sortname: "glcode",
        sortorder: "asc",
        usepager: true,
        title: "General Ledger Listing",
        useRp: true,
        rp: 15,
        showTableToggleBtn: true,
        width: 700,
        height: 500
    });
});

Не работает, пожалуйста, помогите. Я не могу использовать flexigrid. Я использую jQuery версии 1.4.2.

Ответы [ 3 ]

2 голосов
/ 25 июня 2010

Я думаю, вам нужно еще 2 параметра: url: '/ Controller / Action', dataType: 'json'

1 голос
/ 22 июня 2010

Откат к более старой версии jQuery, например версии 1.3. Я думаю, что это будет работать.

0 голосов
/ 19 января 2013

Кажется, это старый вопрос, но я считаю, что он связан с моим, поэтому я могу подтвердить, что второй ответ правильный. Ваш JavaScript должен выглядеть как

$("#flexClients").flexigrid({
    url: '/Client/Client/',
    dataType: 'json',
    colModel: [
    { display: 'Client Id', name: 'Id', width: 100, sortable: true, align: 'center', hide: true },
    { display: 'Client #', name: 'Number', width: 100, sortable: true, align: 'center' },
    { display: 'Name', name: 'Name', width: 350, sortable: true, align: 'center' },
    { display: 'Contact 1', name: 'Contact1', width: 350, sortable: true, align: 'center' },
    ],

Итак, вам не хватает url и dataType

...