2010-11-20 12 views
0

Je veux 500 enregistrements du serveur et j'utilise la grille jQuery. J'utilise un service WCF pour récupérer les données.La liaison à la grille jQuery prend trop de temps

J'ai reçu des données du service en 10 secondes. Je ne peux pas changer la requête dans WCF parce que son exigence de client et aussi beaucoup de données. Lorsque cette donnée est liée à la grille jQuery, cela prend trop de temps et l'erreur "arrête le script parce que cela prend trop de temps".

Je recherche sur Google pour cette erreur, il dit son erreur de navigateur. Donc résoudre cette erreur, je dois faire changer dans le registre. faites-le et l'erreur est résolue mais le problème est que je dois faire le changement dans le PC individuel (PC de client) qui n'est pas possible. Mon application sur le web. Donc je ne peux pas dire à tous mes clients de faire ce correctif, donc je dois corriger le problème côté serveur.

J'ai trouvé une chose. La grille jQuery utilisée dans mon application est de la version 1.0.2.8 et maintenant la nouvelle version de la grille jQuery est 1.0.3.8.

Je le télécharge et puis il donne aussi une erreur, alors quelle peut être la solution possible?

Ma requête prend environ 10 secondes pour renvoyer le résultat. Donc, finalement, la grille jQuery donne une erreur d'arrêt du script, il faut trop de temps pour l'exécuter. Ce que je fais? Je ne peux pas changer ma logique de requête.

Répondre

0

Je n'ai aucune expérience spécifique avec le plug-in jqGrid, mais je peux dire que A demandes de JAX (même ceux qui prennent un certain temps) ne causent pas l'erreur de script lent car ils sont A synchrone.

jQuery Grid lui-même prend probablement trop de temps pour ajouter les données à la page HTML. Est-ce que vous chargez 10 000 enregistrements ou un nombre similaire? Essayez de réduire le nombre d'enregistrements que vous affichez sur la page en limitant la longueur de votre fichier XML ou JSON en conséquence.

Si vous ne pouvez pas réduire le nombre d'enregistrements à afficher sur la page, vous pourriez peut-être modifier votre code (vous devrez peut-être modifier jQuery Grid) pour ajouter seulement 100 enregistrements à la fois éviter l'erreur. Là encore, cela peut ne pas fonctionner si votre fichier d'entrée est trop volumineux.

+0

10 secondes pour retourner 500 résultats semble un peu lent, même pour ajax - il doit y avoir quelques données heafty là .. – Prescott

+0

Merci pour votre réponse et passer votre temps important pour moi.Au lieu de jQuery grille est-il toute autre solution possible ? Parce que l'exigence est sûre "500 enregistrements" donc toute la façon dont je dois afficher les 500 enregistrements. – Hardik

+0

Quelle est la vitesse d'exécution de votre requête qui obtient les 500 enregistrements? Je me demande si votre requête est la partie lente? – Prescott