2010-08-17 14 views
5

zostały googling cały ten czas, w jaki sposób przekonwertować tabelę HTML do czegoś pagable i sortable, a ja natknęliśmy jqGrid plugin jQuery. Nauczyłem się tak daleko, że mamy zadzwonić tableToGrid() przekonwertować tabelę (które mijamy jako ciąg selektor jQuery do metody). Próbowałem również wiele innych rzeczy, jak na przykład:jqGrid: Włączenie stronicowania podczas konwersji tabeli HTML do siatki

tableToGrid('#GridView1'); 

$('#GridView1').jqGrid({ 
    rowNum: 10, 
    pager: '#pager', 
    rowList: [10,20,30] 
}); 

Ale wszystko to nie zapewni mi prawidłowego wyniku. Czy wywołanie jest możliwe, gdy konwertujemy tabelę html na siatkę?

Odpowiedz

9

Należy spróbować z

tableToGrid('#GridView1', { 
    rowNum: 10, 
    pager: '#pager', 
    rowList: [10,20,30] 
}); 

Można również dodać więcej opcji jqGrid jako drugi parametr tableToGrid. Można również uzyskać odniesienie do colModel z jqGrid po konwersji z tytułu

var cm = myGrid.getGridParam("colModel"); 

a następnie modyfikować niektóre parametry modelu kolumny.

AKTUALIZACJA: na przykład za pomocą poniższego kodu można ustawić pewne dane kolumn edittype: "select".

for (var i = 0, l=cm.length; i < l; i += 1) { 
    var colModelColumn = cm[i]; 
    // search for the clolumn with the name colModelColumnName. 
    // variables colModelColumnName and selectedOptions are defined 
    // in another code fragment above this one 
    if (colModelColumn.name === colModelColumnName) { 
     jQuery.extend(colModelColumn, { edittype: "select", 
             editoptions: { value: selectedOptions }}); 
     break; 
    } 
} 
+0

Skąd wziąłeś odwołanie do 'myGrid'? – John

+1

@John: 'var myGrid = $ (" # GridView1 ");' Jeśli ktoś używa w kodzie wiele razy '$ ('# GridView1')', które potrzebują wyszukiwania w DOM strony, której użyłem, zapisz wartość w zmienna i używaj jej wszędzie, gdy jej potrzebuję. Przy okazji można użyć metody 'setColProp' (zobacz http://www.trirand.com/jqgridwiki/doku.php?id=wiki:methods#add_on_grid_methods), aby zrobić to samo, co napisałem w mojej starej odpowiedzi. – Oleg

+0

Dziękuję bardzo! – John

Powiązane problemy