Je utilise cette surcharge de Ajax.BeginForm()
:ASP MVC ActionName dans Ajax.BeginForm
(this AjaxHelper, AjaxOptions ajaxOptions):MvcForm
Et bien la qualité dépend.
Mais maintenant, je dois ajouter un attribut à mon <form>
-tag, donc je dois envoyer htmlAttributes
- ergo-je utiliser une autre surcharge du Ajax.BeginForm()
.
Voici mon problème: Lorsque j'utilise la première surcharge, j'obtiens un href correct pour le formulaire, mais avec la deuxième surcharge, je dois passer dans un ActionName. J'ai essayé de passer dans le vrai ActionName, et j'ai le mauvais href. J'ai essayé de passer en valeur NULL, et c'est toujours le mauvais href (mais le même que quand je passe dans le vrai ActionName ("Index")).
Existe-t-il une autre méthode que je pourrais utiliser pour ajouter mon attribut de formulaire ou quelque chose pour résoudre ce problème? (Je pourrais bien sûr l'ajouter avec un javascript, comme nous l'avons fait dans les années 90, mais c'est 2013 ...)
EDIT: Voici la surcharge que j'utilise maintenant, qui me donne le mauvais href :
Ajax.BeginForm("Index",null,new AjaxOptions() { HttpMethod = "POST",
InsertionMode = InsertionMode.Replace, UpdateTargetId = "myform" },
new { enctype = "multipart/form-data" })
Avez-vous vos itinéraires configurés correctement pour permettre la création automatique des URL correctement? –
Pour être honnête, non. Et je soupçonne que cela pourrait être parce que j'utilise un CMS (EPiServer), parce que ce qui ne va pas avec ActionName spécifié me manque la branche de pays comme ceci: http://mysite.com/en/englishpage - avec ActionName le surcharger devient http://mysite.com/englishpage. EPiServer me fournit les routages de langues. – Annish