jqGrid ma problemy z ładowaniem podgrupy w IE7
Próbowałem zdobyćSiatka jako Subgrid„działało i nie miałem dużo szczęścia. Myślałem, że coś złego robiłem w moim kodzie, ponieważ działał dobrze w samodzielnym teście. W końcu jednak zauważyłemtylko Różnica między moją aplikacją a moją stroną testową była taka, że moja aplikacja była uruchomiona na IE7 i uruchomiłem moją stronę testową w Firefoksie. Rzeczywiście, po załadowaniu strony testowej w IE7 miałem ten sam problem.
Kod, który przedstawi problem na IE7, wygląda następująco:
$(function () {
function loadTasks(subgrid_id, row_id)
{
var id = subgrid_id + '_t';
$('#' + subgrid_id).html('<table id="' + id + '"></table>');
jQuery("#" + id).jqGrid({
datatype: 'local',
colNames: ['No','Item','Qty','Unit'],
colModel: [
{name:'num',index:'num',width:80,key:true},
{name:'item',index:'item',width:130},
{name:'qty',index:'qty',width:70,align:'right'},
{name:'unit',index:'unit',width:70,align:'right'}
],
height: '100%'
});
}
var x = $("#grid").jqGrid({
jsonReader: { root: "rows", repeatitems: false },
datatype: "json",
height: 'auto',
autowidth: true,
forceFit: true,
colNames:['ID','Name'],
colModel:[
{name:'id', key:true, index:'id', width:60, sorttype:"int", jsonmap:"id"},
{name:'name', index:'foobar', width:90, jsonmap: "name"}
],
subGrid: true,
subGridRowExpanded: loadTasks,
caption: "Results"
});
var jsonData = [
{id: 1, name: 'Apple'},
{id: 2, name: 'Banana'},
{id: 3, name: 'Pear'},
{id: 4, name: 'Orange'}
];
x[0].addJSONData( { rows: jsonData } );
});
Wygląda na to, że tworzy kilka fałszywych elementów w każdym wierszu, które nie są poprawnie renderowane wewnątrz wiersza. Oto zrzut ekranu przedstawiający, jak to działa na IE7:
Co jest nieparzyste, te „niezdefiniowane” wiersze są w rzeczywistości częścią prawidłowych wierszy siatki, jeśli najeżdżam myszą na „Apple”, a następnie na pierwszyniezdefiniowany podświetla również wiersz.
Głównym powodem, dla którego wybrałem jqGrid w stosunku do innych sieci, była obsługa zagnieżdżania wielu siatek (czego naprawdę potrzebujemy w naszej aplikacji), jednak nasz standard korporacyjny jest nadal IE7, więc musimy obsługiwać tę przeglądarkę. Czy jest coś, co mogę zrobić, aby ta funkcja działała pod IE7?