Partager via


Optimisez le délai de chargement des formulaires avec les bonnes pratiques de conception et de script

Les formulaires qui sont chargés lentement peuvent réduire la productivité et l’adoption par les utilisateurs. Suivez ces recommandations pour optimiser la rapidité de chargement de vos formulaires. Plusieurs de ces recommandations concernent la manière dont un développeur peut mettre en œuvre des scripts de formulaires pour votre organisation. Veillez à débattre de ces recommandations avec les développeurs qui créent des scripts de formulaires pour vos formulaires.

Création des formulaires

Réfléchissez à l’interaction entre l’utilisateur et le formulaire et la quantité de données que les formulaires doivent afficher.

Conserver le nombre minimal de champs
Le nombre de données devant être transférées sur Internet ou l’intranet pour afficher chaque enregistrement augmente avec le nombre de champs d’un formulaire.

Scripts de formulaires

Lorsque des personnalisations utilisent des scripts de formulaire, veillez à ce que le développeur comprennent ces stratégies pour améliorer les performances.

Évitez d’utiliser des requêtes synchrones Les requêtes synchrones peuvent ralentir le chargement des pages et les formulaires qui ne répondent pas. Utiliser plutôt des demandes asynchrones. Consultez ce billet de blog pour plus d’exemples.

Éviter d’ajouter des bibliothèques de ressource Web JavaScript inutiles
Plus vous ajoutez de scripts au formulaire, plus leur temps de téléchargement est long. Généralement, les scripts sont mis en cache dans le navigateur après leur premier téléchargement, mais les performances d’un formulaire au premier affichage créent souvent une impression durable.

Éviter de télécharger tous les scripts dans l’événement Onload
Si vous avez un code qui prend uniquement en charge les événements OnChange pour les champs ou l’événement OnSave, veillez à définir la bibliothèque de scripts avec le gestionnaire d’événements pour ces événements au lieu de l’événement OnLoad. De cette façon, le chargement des bibliothèques peut être reporté et les performances du formulaire peuvent être améliorées lors du chargement.

Utiliser des onglets réduits pour reporter le chargement des ressources Web
Lorsque des ressources Web ou des IFRAME sont inclus dans les sections d’un onglet réduit, ils ne sont pas chargés si l’onglet est réduit. Ils sont chargés lorsque l’onglet est développé. Lorsque le statut de l’onglet change, l’événement TabStateChange se produit. Le code requis pour prendre en charge les ressources Web ou les IFRAME dans les onglets réduits peut utiliser les gestionnaires d’événements pour l’événement TabStateChange et réduire le code autrement susceptible de se produire dans l’événement OnLoad.

Définir des options de visibilité par défaut
Évitez d’utiliser des scripts de formulaire dans l’événement OnLoad qui masquent des éléments de formulaire. Définissez plutôt des options de visibilité par défaut pour des éléments de formulaire pouvant être masqués par défaut lors du chargement du formulaire. Utilisez ensuite des scripts dans l’événement OnLoad pour afficher les éléments de formulaire à afficher. Si les éléments du formulaire ne sont jamais rendus visibles, ils doivent être supprimés du formulaire plutôt que masqués.

Barre de commandes ou ruban

Gardez ces recommandations à l’esprit lorsque vous modifiez la barre de commandes ou le ruban.

Conserver le nombre minimal de contrôles
Dans la barre de commandes ou le ruban du formulaire, évaluez les contrôles nécessaires et masquez ceux dont vous n’avez pas besoin. Tous les contrôles affichés augmentent les ressources nécessaires au téléchargement dans le navigateur.

Utilisez des requêtes réseau asynchrones dans les règles personnalisées Lorsque vous utilisez des règles personnalisées qui effectuent des requêtes réseau dans Unified Interface, utilisez l’évaluation des règles asynchrones.

Voir aussi

Créer et concevoir des formulaires
Considérations en matière de conception des formulaires principaux
Présentation des formulaires principaux dans les différents clients