2008-09-22 6 views
1

Pour réparer un bogue dans notre application Web SAP BW, j'ai besoin d'appeler deux fonctions javascript depuis la bibliothèque de frameworks Web au chargement de la page. Le problème est que chacune de ces fonctions recharge la page en tant qu'effet secondaire. En outre, je n'ai pas accès à modifier ces fonctions.Exécution sélective de JavaScript lors du chargement de la page

Toutes les bonnes idées sur la façon d'exécuter un morceau de code sur "réel" chargement de la page, puis un autre morceau de code sur la charge ultérieure causée par cette fonction, puis n'exécuter aucun code le troisième recharger?

Ma meilleure idée jusqu'ici c'est de mettre un cookie à chaque fois pour déterminer ce qu'il faut faire. Je n'aime pas beaucoup cette solution. Rien de mieux serait le bienvenu. Et en passant, je réalise que charger une page trois fois est absolument ridicule, mais c'est comme ça qu'on roule avec SAP.

Répondre

2

Un cookie fonctionnerait très bien. Vous pouvez également modifier la chaîne de requête à chaque fois avec un paramètre "mode = x" ou "load = x".

Cela poserait un problème si l'utilisateur essaie de mettre en signet la page finale, cependant. Si c'est une option, la solution de cookie est bien. Je suppose qu'ils ont besoin de cookies pour aller aussi loin dans l'application de toute façon?

+0

J'accepte d'utiliser un cookie. Nous ne parlons que de cookies volatiles qui sont rarement désactivés, car de nombreux sites ne fonctionnent pas bien lorsqu'ils sont désactivés, ce qui est particulièrement vrai pour les solutions intranet. – AnthonyWJones

1

Un cookie ou transmettez un paramètre de chaîne de requête indiquant quelle fonction javascript a été exécutée. Nous avons dû faire quelque chose dans ce sens pour sortir un morceau de notre logiciel. C'est vraiment le meilleur que j'ai.

0

Utilisez un cookie ou définissez une valeur de champ masqué. Mon vote serait pour la valeur du terrain.

0

Cela peut être un cas mignon pour l'utilisation de window.name, 'la propriété qui survit à la recharge des pages'.

Questions connexes