2010-06-01 7 views
0

J'essaie d'utiliser Flexigrid avec ASP.NET MVC. J'ai besoin de toutes les fonctionnalités de type JSON (recherche, tri, recherche) sauf que j'utilise foreach dans ma vue et en boucle pour générer les lignes de la table.jQuery Flexigrid avec 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> 

Maintenant, je l'aide d'un bloc de script comme ce

$(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 
    }); 
}); 

Son ne fonctionne pas s'il vous plaît aider. Je suis incapable d'utiliser flexigrid. J'utilise jQuery version 1.4.2.

Répondre

1

Repli vers une ancienne version de jQuery, comme la version 1.3. Je pense que cela va fonctionner.

2

Je pense que vous avez besoin de 2 autres paramètres: url: '/ contrôleur/action', dataType: 'JSON'

0

Cela semble être vieille question, mais je le vois comme lié à la mienne, donc je peut confirmer que la deuxième réponse est correcte. Votre JavaScript doit ressembler

$("#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' }, 
    ], 

Alors, vous manquez url et dataType