Domanda

Nozioni di base

Ciao a tutti, ho vedere il metodo tableToGrid (da Peter Romianowski) definito come tableToGrid(selector, options) sul wiki jqGrid, ma non riesco a trovare da nessuna parte che ha la documentazione del options

Qualcuno sa su questi o dove trovarli? EDIT: Grazie Oleg, ha deliberato

Altro

Che cosa Im in realtà cercando di fare è racchiudere il jqGrid conseguente form, che presenterà i valori checkbox che sono in una colonna della tabella. Il mio problema è che il metodo tableToGrid sembra essere la rimozione della struttura name dagli elementi checkbox e quindi non vengono presentate con il palo modulo.

È stato utile?

Soluzione 2

RISOLTO

Il metodo jqGrid tableToGrid troverà il valore delle caselle di controllo nella tabella originale e applicare automaticamente l'opzione multiSelect: true sul risultante jqGrid, mostrando caselle intrinseche. Per ottenere un elenco degli ID righe selezionate, è sufficiente chiamare

$('#grid').getGridParam('selarrrow')

Altri suggerimenti

Come si può leggere sul http: //www.trirand. ? com / jqgridwiki / doku.php id = wiki: table_to_jqgrid il parametro options del metodo tableToGrid c'è niente di più come le opzioni del jqGrid che si crea (vedi http://www.trirand.com/jqgridwiki/doku.php?id=wiki:options )

Se io undesnand il problema carrect principale, si dispone di alcuni dati ricevuti dal server come risposta sul modulo submit. E si desidera inserire questi dati in una griglia. Per fare questo è possibile utilizzare modo più diretto con l'utilizzo di datatype: 'local' jqGrid. Ecco un esempio:

var grid = jQuery('#list').jqGrid({
    caption: 'Testclusters',
    height: 'auto',
    gridview: true,
    rownumbers: true,
    sortable: true,
    datatype: 'local',
    viewrecords: true,
    pager: '#pager',
    pgbuttons: false,
    pginput: false,
    rownumbers: true,
    colNames: ['Name', 'Testtiefe', 'Std', 'FachlicheTests', 'RowVersion'],
    colModel: [
        { name: 'Name', index: 'Name', width: 120 },
        { name: 'TesttiefeName', width: 180 },
        { name: 'Std', width: 21, formatter: 'checkbox', align: 'center' },
        { name: 'IsFachlicheTests', width: 21, formatter: 'checkbox', align: 'center' },
        { name: 'RowVersion', width: 50, hidden: true }
                ]
}).navGrid('#pager', { edit: false, add: false, del: false, refresh: true, view: false, search: false })
  .navButtonAdd('#pager', { caption: "", buttonicon: "ui-icon-calculator", title: "choose columns",
      onClickButton: function() {
          jQuery('#list').jqGrid('columnChooser');
      }
});
grid.jqGrid('gridResize');
var myData = [
    { Name: "VIA XP", TesttiefeName: "Alle SW-Produkte", Std:true, IsFachlicheTests:false, RowVersion: "20FC31" },
    { Name: "KUBUS", TesttiefeName: "Alle SW-Produkte", Std:false, IsFachlicheTests:true, RowVersion: "20FC32" }
];

for (var i = 0; i <= myData.length; i++) {
    grid.addRowData(i + 1, myData[i]);
}

Prima di tutto si crea un jqGrid vuota e quindi riempire con rispetto del metodo di addRowData.

Inoltre, se si dispone di molte caselle di controllo interno della jqGrid, può essere interessante per voi a guardare il mio esempio da il testo verticale all'interno intestazioni di tabella, secondo un basato su JavaScript library SVG e vedere i risultati su http://www.ok-soft-gmbh.com/VerticalHeaders/TestFixedO1.htm .

Modifica della larghezza delle colonne per qualsiasi numero di colonne

In questo caso, dopo l'accumulo ottenere jqGrid si può solo andare al tavolo sempre generato e modificare manualmente tutte le larghezze la colonna di intestazione di colonna e le rispettive dati senza raddrizzare un po 'noiosi codici.

        var tabColWidths ='70px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px|125px';

function reDefineColWidth(){
        var widthsArr = tabColWidths.split('|');

    for(var j=0; j < widthsArr.length ; j++ ){
            $('.ui-jqgrid-labels > th:eq('+j+')').css('width',widthsArr[j]);
            $('#grid tr').find('td:eq('+j+')').each(function(){$(this).css('width',widthsArr[j]);})
        }
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top