0
我一直在阅读大量关于同类问题的帖子,但没有人帮助我解决了jqGrid获取的这个问题。我不明白我在做什么错..jqGrid - 数据以JSON形式返回,但未显示
这里是我的PHP文件返回的数据(它颠倒intentionnally下令,因为我分类整理DESC):
{"rows":{"1":{"id":"2","cell":["2","Italie","8",""]},"0":{"id":"1","cell":["1","France","8",""]}},"page":"1","total":1,"records":2}
这里结束其中i回声之前设置数据的PHP文件json_encode它:
// Préparation du tableau de retour
$tableauGroupes = array();
// Si nous avons obtenu des résultats
if (count($listeFiltree) > 0) {
foreach ($listeFiltree as $index => $groupe) {
// On récupère le tableau contenant toutes les traductions pour le nom du groupe
$tableauTraduction = (int)$groupe->getNomGroupe();
// On récupère le nombre de sousGroupes dans le tableau de sousGroupes
$nombreEnfants = count($groupe->getTableauCentreSousGroupe());
// Préparation des lignes à afficher
$tableauGroupes['rows'][$index]['id'] = $groupe->getGroupe();
$tableauGroupes['rows'][$index]['cell'] = array($groupe->getGroupe(), $tableauTraduction[$langue], (string)$nombreEnfants, "");
}
}
// Ajout des informations générales
$tableauGroupes['page'] = $page;
$tableauGroupes['total'] = ceil(count($tableauGroupes)/$limit);
$tableauGroupes['records'] = count($tableauGroupes["rows"]);
echo json_encode($tableauGroupes);
下面是jqGrid的表的初始化(这曾经工作得很好):
// Configuration du jqGrid des centres
$("#listeGroupes").jqGrid({
url: 'struct/<?=$rubrique?>/<?=$sous_rubrique?>/controleurs/tableauGroupes.php?sid=<? echo $sid;?>&sigle=<? echo $sigle;?>&langue=<? echo $langue;?>&nd='+new Date().getTime(), // Url de récupération des données
height: tailleListe, // Hauteur de la grille
ajaxGridOptions: {async: false}, // Surcharge des options ajax, lors des chargements de données
datatype: "json", // Type de données récupérées par la grille
colNames:["<?=THEAD_GROUPE?>","<?=THEAD_NOM_GROUPE?>","<?=THEAD_NB_SOUSGROUPE?>","<?=THEAD_ACTIONS?>"],
colModel:[ // Configuration des colonnes
{name:'groupe', index:'groupe', width:40, sortable:true, search:true},
{name:'nomGroupe', index:'nomGroupe', width:100, sortable:true, search:true},
{name:'nbSousGroupes', index:'nombreEnfants', width:40, sortable:true, search:true},
{name:'actions', index:'actions', width:65, sortable:false, editable: false, search:false}
],
rowNum:20, // Nombre de lignes par page
rowList: [10,20,30,50], // Nombre de lignes par page possibles
altclass:'odd', // Classe css des lignes alternantes (1/2)
altRows:true, // Alternance de lignes
pager: '#pagerlisteGroupes', // Identifiant du pager
sortname: 'groupe', // Colonne par laquelle on trie par défaut
sortorder: "asc", // Ordre de tri par défaut
viewrecords: true, // Affiche le nombre de résultats
autowidth: true, // Largeur automatique
imgpath: 'css/jqGrid/images', // Chemin d'accès aux images
pgbuttons: true, // Affiche les boutons du pager
pginput: true, // Affiche un champ de saisie dans le pager, pour rentrer un numéro de page
multiselect: true, // Permet de sélectionner simultanément plusieurs lignes
caption: "Liste des groupes", // Titre de la grille
//loadonce: true,
sortable: true,
ignoreCase:true,
loadComplete: function(){
alert("ici");
initGrilleGroupes();
},
onSelectRow: function(id, statut){
selectionnerGroupe(id);
}
})
// Ajout du pager
.navGrid('#pagerlisteGroupes',{add:false,edit:false,del:false, search: false, searchtitle: "<? echo utf8_encode(html_entity_decode(TITLE_BOUTON_SEARCH));?>", refresh: false, refreshtitle: "<? echo utf8_encode(html_entity_decode(TITLE_BOUTON_REFRESH));?>"}, {}, {}, {}, { closeAfterSearch: true, drag: true, closeOnEscape: true }, {})
// Ajout de la barre de filtrage
.filterToolbar({searchOnEnter: false})
// Ajout du bouton de création de centre
.navButtonAdd('#pagerlisteGroupes',{
caption: "", // Texte du bouton
title: "<?=TITLE_BOUTON_ADD_GROUPE;?>", // Titre tooltip du bouton
buttonicon: "ui-icon-plus", // Nom de l'icône du bouton
position: "first", // Position de l'icône dans le pager
onClickButton: function(){
clicAjouterGroupe();
}
});
欢迎任何帮助/建议;) 干杯