J'ai un problème dans IE. Si vous appuyez sur Entrée lorsque le dernier contrôle d'entrée est activé, le focus est envoyé au bouton "Suivant". Cela soumet le formulaire. Jusqu'ici tout va bien.soumettre le comportement du bouton dans IE
Le code dans mon WizardController de classe de base semble voir si le bouton de soumission suivant est nul, comme suit:
protected string NextButton
{
get
{
return ControllerContext.HttpContext.Request.Params["NextButton"];Nex
}
}
Cependant, en dépit de la forme soumission, cette propriété renvoie null à moins que l'utilisateur clique explicitement sur la bouton avec sa souris.
Ceci est manifestement faux, mais je ne sais pas pourquoi cela se produit.
RÉVISÉ POUR LE PROBLÈME PRÉCISER PRECISE:
Le problème se produit uniquement s'il n'y a qu'une commande d'entrée de texte dans le formulaire HTML qui obtient rendu au navigateur.
FIN EDIT
Andrew
Vous ne savez pas comment votre réponse se rapporte à ma question? C'est-à-dire, comment cela empêcherait-il le formulaire de soumettre si l'utilisateur appuie sur entrer? Et est-ce un bug connu dans IE? Aussi, toute solution ne devrait pas impliquer l'utilisation de JavaScript: elle doit fonctionner avec ou sans. – awrigley
En mettant dans le champ caché, vous n'avez pas besoin d'empêcher la soumission en appuyant sur Entrée. Le problème est que presser Entrée soumet le formulaire, mais sans les données du bouton 'suivant', non? Il suffit donc d'ajouter un autre élément de formulaire caché et de l'utiliser à la place de 'nextButton'. Comme pour le JavaScript, vous auriez seulement besoin de/want que si vous avez plus d'un bouton de soumission (par exemple "Suivant" et "Précédent"), mais pourquoi vous refuseriez d'utiliser JS je ne peux pas imaginer. –
Le problème est seulement avec IE. Dans tous les autres navigateurs, cela fonctionne très bien. Mon environnement de travail d'assistant construit une notion des étapes actuelles, prochaines et précédentes en utilisant la réflexion plutôt que les attributs d'un contrôle d'entrée, donc la soumission de formulaire doit se faire avec un bouton Soumettre. Tout fonctionne (y compris les barres latérales générées automatiquement) à l'exception de celui-ci "bug". Je ne pense vraiment pas que votre suggestion fonctionnera étant donné le cadre que j'ai construit, mais merci pour la suggestion et je vais le garder dans les dossiers. – awrigley