Comment pouvez-vous désactiver de manière programmative la grille de mettre en évidence une ligne lorsque vous le survolez avec votre souris? Vous cherchez à désactiver cela seulement à certains moments.
Ceci est le code de oleg qui a fonctionné: p>
3 Réponses :
Une simple recherche Google a révélé cette source: http: //www.trirand. NET / Exemples / Apparence / Highlight_On_Hover / Default.aspx P>
"Par défaut, JQgrid Hightlight Ranges sur la survolte. Ceci est contrôlé par les apparences.LighLighTtrowsonHover Propriété - le réglage sur False va désactiver cela." P>
Vu ça. N'a vu aucun exemple JavaScript de la façon de définir cet objet. Semble être contrôlé en quelque sorte par le code .NET .. ??
Étrange. On dirait une propriété du
Utiliser HOVERROWS: FALSE code> Option . P>
Je peux obtenir ceci pour travailler lorsque je l'ai défini dans la configuration de la grille initiale. Mais si j'essaie de régler cela après la charge initiale à l'aide de $ ("# liste"). SetGridParam ({HoverRows: true}); code> Le nouveau paramètre ne semble pas affecter. Essayé de recharger la grille (
$ ("# liste"). Trigger ("ReloDGrid"); code>) Après avoir changé la propriété mais cela ne semblait pas fonctionner non plus. Les docs disent que cela peut être changé .. toutes les idées?
@Marcus: Vous avez raison dans la table de la page Triand.com/ jQgridwiki / doku.php? id = wiki: options . Je pense que c'est plus une erreur dans la documentation. Néanmoins, vous pouvez éteindre la planche de rangées de rangées dynamiquement une fois b> avec respect de $ ("# liste"). UNBIND ("MouseOver"); $ ("# Liste"). UNBIND (' Mouseout '); code>. Voir Démo sur OK-SOFT-GMBH.COM/JQGRID/PAGER.HTM a> (Cliquez sur "Désactiver les lignes de survol"). Vous ne pouvez pas facilement restaurer l'état initial. Pour restaurer cela, vous devez lier les événements une fois de plus sur les fonctions correspondantes (voir Grid.Base.js Lines 2109-2119)
@MARCUS: Regardez Github.com/tonytomov/jqgrid /blob/master/js/grid.base.js#l211 1 (lignes 2111-2121) qui sera utilisé en cas de HOVERROWS: true code>
Merci Oleg - vraiment j'ai besoin d'un moyen de reculer l'événement afin de s'éteindre puis de faire demi-tour ..
@MARCUS: Pourquoi ne pas simplement lier "Mouseover" et "Mouseout" à votre petit gestionnaire d'événements qui ressemble exactement aux lignes 2111-2121 de GITUB.COM/TONYTOMOV/JQGRID/BLOB/MASTER/JS/GRID.BASE.JS#L211 1 ?
@Marcus: Ok! La copie du code est si simple. J'ai modifié pour vous une fois de plus le code de ok-soft-gmbh.com/ JQGRID / PAGER.HTM Pour que l'on puisse utiliser "Désactiver des lignes de navigation" pour allumer / éteindre les planches des rangées.
Cela fonctionne bien - merci Oleg. Je vais ajouter une demande de fonctionnalité JQGrid pour ajouter cette fonctionnalité à l'API de base.
Cela fonctionne pour moi sur LoadComplete: $ (". JQGrow"). AddClass ("UI-State-Hover"). CSS ("Contexte", "Aucun! IMPORTANT"); code>
Je remplace actuellement le gestionnaire de mousherover existant avec une fonction intermédiaire qui appelle simplement le gestionnaire existant si la grille est activée, comme ceci: de cette façon je n'ai pas à Copiez le code d'événement JQGrid. p> Je n'aime pas l'utilisation de la sourisover [0] .Handler, mais cela fonctionne pour le moment. P> P>