2010-10-13 26 views
0

L'exemple de mise en œuvre treegrid n'est pas très clair. J'ai une grille comme:Puis-je configurer un jqgrid treegrid afin qu'il récupère les données enfant sur la ligne ouverte? Comment?

ID Name Val 
+ 1 Foo  45 
+ 2 Bar  30 

Ce que je suis en train de remplir à partir d'un objet json. Lorsque vous cliquez sur le +, je veux aller au serveur et obtenir les données associées à l'identifiant de cette ligne:

ID Name Val 
- 1 FooBar 45 
    - Foo 20 
    - Bar 25 
+ 2 Baz  30 

Y a-t-il des exemples qui montrent que plus clairement? En outre, ceux que je vois semblent vouloir que vous récupériez l'ensemble des données en une fois. Ou est-ce que "ajouter" et "soustraire" des lignes est un meilleur moyen d'aller dans ce cas? Mise à jour: en pensant un peu plus loin, je ne pense pas que la méthode add/subtract serait bonne, car elle tuerait le tri.

Répondre

0

Probablement Subgrid est ce dont vous avez besoin? Regardez le demo et choisissez "Avancé" puis "Subgrid" de la partie gauche de l'arbre. La démonstration utilise le paramètre subGridUrl avec l'URL du serveur. Si vous cliquez par exemple sur "+" de la ligne avec id = 6 la demande à l'subGridUrl enverra. La demande contiendra nd_=1287002219148&id=6 comme paramètres supplémentaires, où nd_ avec l'horodatage sont utilisés uniquement pour rendre chaque URL unique et ainsi désactiver la mise en cache locale.

+0

Oui, j'ai regardé sous-réseau. Ce que je n'aime pas, c'est qu'il y a une table entière, avec sa propre structure de colonnes, alors qu'avec les miennes, les enfants ont les mêmes colonnes, donc idéalement ils s'aligneront. Merci quand même. – sprugman

+0

@sprugman: Il me semble que si vous choisissez les valeurs 'width' dans' subGridModel' correspond aux valeurs 'width' du' colModel' de votre grille, vous aurez les résultats dont vous avez besoin. N'est-ce pas? – Oleg

+0

en théorie, oui, mais il est assez facile pour ces choses de devenir désynchronisées. En fait, cependant, le biz aime le sous-réseau, donc nous sommes décrochés. :) – sprugman