2010-06-01 4 views
0

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

<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.

ответ

1

Возврат к старой версии jQuery, например, версии 1.3. Я думаю, это сработает.

2

Я думаю, что нужно еще 2 параметра: URL: '/ Controller/Action', DATATYPE: 'JSon'

0

Это, кажется, старый вопрос, но я вижу это как связано с моей, так что я может подтвердить, что второй ответ правильный. Ваш 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