Question

J'ai un formulaire Web qui utilise Telerik RadAjaxManager (via un proxy RadAjaxManager) pour mettre à jour un RadGrid en fonction de critères de filtrage. Lorsque les critères changent, je réassocie la grille, mais je souhaite maintenant aussi redimensionner la grille sur le client, à l'aide de JavaScript. Comment puis-je provoquer l'exécution de mon code JavaScript lorsque je relie la grille? Le code JS existe déjà sur la page et doit simplement être appelé.

E.g. Lorsque j'augmente le nombre de lignes de RadGrid, il rétablit une hauteur par défaut, beaucoup moins que la hauteur de son conteneur, jusqu'à ce que je redimensionne ou recharge la page lorsque la grille est redimensionnée à l'aide du code ci-dessous. Je souhaite pouvoir exécuter resizeChildren () lorsque mes critères, et donc le nombre de lignes, changent.

    function resizeChildren() {
        $("#ctl00_mainContentPlaceHolder_grid_GridData").height($(window).height() - 160);
    }

    $(document).ready(function() {
        resizeChildren();
    });
    $(window).resize(function() {
        resizeChildren();
    });

Je sais que je peux le faire avec le code côté client, mais je veux savoir comment exécuter le code côté client dans le cadre de la réponse à un rappel Ajax.

Était-ce utile?

La solution

Je voudrais utiliser la collection de scripts de réponse de RadAjaxManager ou le gestionnaire pageLoaded du PageRequestManager. Voir cet article sur le site de Telerik pour plus de détails.

Autres conseils

Je sais que l'on a déjà répondu à cette question, mais je voulais insister sur ...

Si vous ajoutez un RadScriptBlock à l'intérieur d'un RadAjaxPanel, il sera exécuté chaque fois qu'un objet contenu provoque la publication ajax

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top