2010-08-09 8 views
0

Je travaille localement sur un site ASP.NET et rencontre des problèmes avec postbacks dans IE8.ASP.NET Problèmes de publication dans IE8

J'ai une page avec un repeater qui construit une table et chaque ligne a un LinkButton qui est utilisé pour supprimer cette ligne.

Dans FireFox et Chrome, le bouton fonctionne comme prévu - les formulaires sont postés et toutes les valeurs du formulaire sont disponibles pour le traitement. Dans IE8, le formulaire est publié mais la collection de formulaires est vide, à l'exception du bouton qui a déclenché le postback.

C'est un problème parce que

  1. il est étrange et je ne comprends pas et
  2. J'utilise les valeurs de la forme réaffecté pour reconstruire des objets métier (je ne les stocke pas dans viewstate ou session mais les reconstruire à partir de zéro en fonction des valeurs entrées par l'utilisateur dans le formulaire). Lorsque je reporte de FF/Chrome, la forme complète est là (par exemple Request.Form.AllKeys a, disons, 60 éléments) et je peux dériver les valeurs pour mon objet métier. Lorsque je reporte à partir de IE, mon formulaire est pratiquement vide et mon code de reconstruction échoue (par exemple Request.Form.AllKeys a, disons, seulement 9 articles au lieu des 60 attendus).

Je suis à une perte pour expliquer pourquoi il y a cette différence dans le contenu de la collection de forme sur postback entre FF/Chrome et IE et serait grandement apprécier toute connaissance/aide à cet égard.

J'ai essayé de résoudre le problème comme je le vois - si d'autres informations sont nécessaires, s'il vous plaît faites le moi savoir. Merci de votre aide.

Répondre

2

Résolu cela - s'avère que j'avais un formulaire imbriqué dans le formulaire principal sur ma page maître. Retiré et tout va bien.

2

Votre problème semble inhabituel et n'est pas quelque chose que j'ai jamais rencontré. Bien que je ne puisse pas vous aider directement, je vous recommande d'utiliser Fiddler - Web Debugging Proxy pour examiner le trafic HTTP comme moyen de diagnostiquer ce qui se passe. Pour citer, "Fiddler est freeware et peut déboguer le trafic de pratiquement n'importe quelle application, y compris Internet Explorer, Mozilla Firefox, Opera, et des milliers d'autres ..."

+0

Merci pour votre suggestion.J'ai vérifié le trafic avec Fiddler et cela confirme ce que j'ai vu - que les données de postback de firefox contiennent tous les éléments de formulaire (et ainsi je suis capable de reconstruire mon objet business) et IE8 le postback contient seulement le LinkButton. – user415127

+0

Juste une supposition sauvage, mais avez-vous validé votre code HTML et vérifié que vous avez tous les balises de fermeture correctes? Parfois, une balise de fermeture manquante peut bousiller les données affichées. –

0

Nous avons eu un problème similaire dans IE8 sous Windows 2008 et la solution était liée aux escalades de droits d'utilisateur.

Sur Windows 2008 machine que je devais aller à:

Démarrer> Outils d'administration> Stratégie de sécurité locale> Stratégies locales> Sécurité Option

puis sélectionnez « Contrôle de compte d'utilisateur: mode d'approbation Administrateur pour Build-en Compte administrateur "

Sélectionnez Activer & puis Appliquer.

Merci Anugrah