2010-12-07 16 views
0

J'ai utilisé l'autocomplete du kit ajaxtool sur une page qui obtient des données d'un service web. Cette saisie semi-automatique est lente, au moment où je n'ai que 10 à 20 enregistrements dans la table et il faut environ 3 à 5 secondes pour rechercher et afficher le résultat dans la saisie semi-automatique. L'utilisateur doit attendre environ 4 secondes en moyenne pour voir les données.Comment faire une saisie semi-automatique ajaxtoolkit super rapide et lier sur le client

Je ne comprends pas comment le rendre super rapide s'il vous plaît guide-moi. Est-il possible de lier l'autocomplétion du côté client? Mon idée est si j'obtiens des données avec le chargement de page du serveur et le placez dans un certain tableau dans le Javascript et pendant que l'utilisateur cliquent dessus obtiennent des données du côté de client.

Répondre

1

Le problème est peut-être que vous obtenez les données du service Web, ce qui peut prendre quelques secondes. Pourquoi ne cachez-vous pas les données dans la servlet elle-même (dans un Hasmap ou une liste) et ensuite périodiquement (disons toutes les 2 minutes) appelant le webservice et obtenir les dernières nouvelles. Par conséquent, lorsque votre plug-in auto-complétion demande les dernières données de saisie semi-automatique, vous devez renvoyer les valeurs mises en cache et non les valeurs réelles du service Web.

+0

Merci de m'avoir répondu. Apache Fan ne pensez-vous pas que l'obtention de données à partir du service Web est plus rapide que dans JSON. J'utilise ajplxtookit automplete dont je ne suis pas sûr mais qui ne fonctionne qu'avec les services web. S'il vous plaît guider. Merci une fois agian. – haansi

+1

Alors, quel type de logique métier effectuez-vous pour créer la liste des éléments de saisie semi-automatique? Mon point est que si vous pouvez mettre en cache la liste et ne recréer que périodiquement la liste, vous pouvez vraiment améliorer les performances. – Pushkar

1

J'ai remarqué que certains sites stockent la carte/liste de hachage sur une autre page et font référence à cette page à partir de la fonction de saisie semi-automatique. Par conséquent, le chargement de ladite page ne sera pas impacté, et la saisie semi-automatique sera extrêmement rapide (pratiquement instantanée). En outre, vous pouvez maintenir cette liste à votre mensure une fois par minute/heure/jour/mois/année et il sera complètement indépendant de l'expérience des utilisateurs.