0

Je cette jqGrid:jqGrid réactive convertit les icônes d'action à un bouton, mais pas d'informations pagination

$(document).ready(function() {  
    $.jgrid.defaults.width = 780; 
    $.jgrid.defaults.responsive = true; 
    $.jgrid.defaults.styleUI = 'Bootstrap'; 
    $.jgrid.styleUI.Bootstrap.base.rowTable = "table table-bordered table-striped";   
      $("#gridUsuario").jqGrid({ 
       url: '@Url.Action("GetUsers", "Account", new { area = "Security" })', 
       mtype: "GET", 
       datatype: "json", 
       colModel: [ 
        { label: 'ID', name: 'ID', key: true, width: 70 }, 
        { label: 'Vigente', name: 'UsuarioVigente', hidden: true }, 
        { label: 'Nombre Completo', name: 'FullName', width: 200, edittype: 'text', editable: true, editrules: { required: true }, editoptions: { size: 50, maxlength: 100 }, formoptions: { elmprefix: '(*)' } }, 
        { label: 'Login', name: 'UserName', width: 120, edittype: 'text', editable: true, editrules: { required: true }, editoptions: { size: 30, maxlength: 50 }, formoptions: { elmprefix: '(*)' } }, 
        { label: 'Password', name: 'Password', width: 100, edittype: 'password', editable: true, hidden: true, editrules: { required: true, edithidden: true }, editoptions: { size: 30, maxlength: 50 }, formoptions: { elmprefix: '(*)' } }, 
        { label: 'E-mail', name: 'Email', width: 240, edittype: 'text', editable: true, editrules: { required: true, email: true }, editoptions: { size: 50, maxlength: 100 }, formoptions: { elmprefix: '(*)' } }, 
        { label: 'Teléfono', name: 'PhoneNumber', width: 120, edittype: 'text', editable: true, editoptions: { size: 30, maxlength: 50 } }, 
        { label: 'Ciudad', name: 'Hometown', width: 150, edittype: 'text', editable: true, editoptions: { size: 30, maxlength: 50 } }, 
        { label: 'Fecha Registro', name: 'UsuarioCreadoEn', width: 120, formatter: "date", formatoptions: { srcformat: "ISO8601Long", newformat: "d/m/Y H:i" } } 
       ], 
       viewrecords: true, 
       shrinkToFit: false, 
       autowidth: true, 
       multiselect: true, 
       rowNum: 20, 
       rowList: [10, 20, 30], 
       gridview: true, 
       pager: "#gridPager", 
       sortname: "FullName", 
       sortorder: "asc", 
       beforeRequest: function() { 
        var $PANEL = $('#pnlGrid'), 
         $FOOTER = $('footer'); 

        // 125 = otros altos, como paddings y la fila de paginación 
        $("#gridUsuario").jqGrid('setGridHeight', $FOOTER.offset().top - $PANEL.offset().top - 125); 
       }, 
       rowattr: function (rd) { 
        if (!rd.UsuarioVigente) { 
         return { "class": "no-vigente" }; 
        } 
       } 
      }); 

Tout fonctionne un comportement parfait, mais réactif.

Dans la barre d'outils inférieure, j'ai plusieurs actions créées avec la méthode navButtonAdd.

Lorsque je teste la réactivité, les icônes d'action de la barre d'outils inférieure sont remplacées par un bouton avec le libellé "Actions ...". Lorsque vous cliquez dessus, tous les éléments d'action apparaissent. C'est parfait, cependant, la pagination ne se comporte pas de la même façon, ce qui fait apparaître des icônes de pagination sur le bouton "Actions ...".

Est-ce un bug dans JQGRID? est-il un moyen de résoudre cela?

+0

Il semble que commerciales ** ** [Guriddo jqGrid JS] (http://guriddo.net/?page_id=103334) a encore des boutons non-enveloppants dans la barre d'outils du navigateur. Alternative fork [free jqGrid] (https://github.com/free-jqgrid/jqGrid) a la fonction (voir [l'article wiki] (https://github.com/free-jqgrid/jqGrid/wiki/Redesign- de-la-structure-de-Navigateur-Barre-des-pagers)). Je vous recommande d'essayer gratuitement jqGrid, qui supporte aussi Bootstrap (voir [ici] (https://free-jqgrid.github.io/getting-started/index.html#bootstrap)). Vous aurez besoin de faire des changements minimes d'options comme l'utilisation de 'guiStyle:" bootstrap "'. – Oleg

+0

La fonctionnalité réactive est très facile. Regardez [l'ancienne démo] (https://jsfiddle.net/OlegKi/andm1299/26/) qui montre comment cacher automatiquement certaines colonnes sur les petits appareils (voir 'classes:" hidden-xs ", labelClasses:" hidden -xs "option et essayez de redimensionner la grille). [Une autre démo] (https://jsfiddle.net/OlegKi/ejpn9/149/), créée pour [le problème] (https://github.com/free-jqgrid/jqGrid/issues/303), montre une fonctionnalité réactive en combinaison avec des colonnes auto-risquantes. – Oleg

+0

D'autres fonctionnalités implémentées dans jqGrid gratuit pourraient être intéressantes pour vous aussi. Voir [la démo] (http://www.ok-soft-gmbh.com/jqGrid/OK/multiPageSelection.htm) par exemple, décrit dans [la réponse] (https://stackoverflow.com/a/33021115/ 315935), montre l'option 'multiPageSelection: true', qui permet de présélectionner des lignes ou de conserver des lignes sélectionnées sur plusieurs pages. – Oleg

Répondre

0

Avant de commenter si certains composants ne supportent pas certaines fonctionnalités, il est bon de vérifier l'exemple. De l'exemple fourni, je ne vois aucun problème. L'auteur de la demande devrait afficher un exemple complet, et le suggester devrait le vérifier avant de suggérer son composant.

Cordialement

+0

Bien sûr, vous n'avez vu aucun problème? l'avez-vous testé sur un téléphone portable? – jstuardo

+0

Où dans votre message original vous nous dites que le problème apparaît dans les téléphones mobiles? De plus le menu action apparaît lorsque le navigateur est activé - je ne vois pas la présence du navigateur dans votre exemple –