10
votes

ASP.NET MVC - Bouton Soumettre HTML Non envoyé avec Post?

comme dans le titre. J'utilise Cette méthode pour permettre Plus d'un bouton Soumettre par forme et plus d'une action pour les gérer.

Cependant - pour une raison étrange - tout d'un coup mon bouton d'envoi ne se fait soumettre avec le formulaire !? Toute raison pour laquelle cela se produirait? P>

Testé à l'aide d'IE, FF, Chrome - Tous les derniers P>

Code de vue: P>

Parametersapplication/x-www-form-urlencoded
Email   wayne@isit.gd
Password    sdfsdfsdfsdf
PublicSite  false
SiteUrl sdfsdfsdf
ThemeId 
UserName    Usernames-12131
Source
Content-Type: application/x-www-form-urlencoded Content-Length: 112 UserName=Usernames-Sux0r&Password=sdfsdfsdfsdf&Email=wayne%40isit.gd&ThemeId=&PublicSite=false&SiteUrl=sdfsdfsdf


0 commentaires

4 Réponses :


10
votes

Avez-vous défini le nom sur l'entrée?

Les champs de formulaire ne sont pas envoyés, sauf si vous spécifiez l'attribut "Nom". P>

<input  type="submit" value="Register" name="ActionRegister"/>
<input  type="submit" value="Cancel" name="ActionCancel" class="cancel" />


4 commentaires


tellement bizarre - je ne sais pas pourquoi cela se passe :(


Si je donnais le 1er Soumettre - et ajoutez une autre - Ça fonctionne ... Hearfry


Les boutons et la soumission ont eu le même problème - si je supprime le 1er Soumettre et simplement taper un nouveau, il fonctionne ... Très étrange



2
votes

Ceci:

<button  type="submit" value="Register" name="ActionRegister" >Register</button>
<button  type="submit" value="Cancel" name="ActionCancel" class="cancel" >Cancel</button>


1 commentaires

Je rencontre cette même étrangeté maintenant, 7 ans.



4
votes

La façon dont je l'ai fait avant, est-ce que je poste mon formulaire à la même action. Dans mon action, je vérifie la valeur du bouton d'entrée.

Donc, dans votre cas, vous devriez faire suite à votre vue. Gardez le nom des deux entrées Soumettre la même valeur mais différente. xxx

et sur votre contrôleur xxx

dans les cas standard ceux-ci devrait fonctionner ....

Permettez-moi de mettre en évidence quelque chose d'intéressant maintenant ... !!

1) sur soumettre un événement du formulaire si vous désactivez tout type d'entrée de soumission dans votre JavaScript pour désactiver Double Soumettre, vous obtiendrez toujours des valeurs null pour eux dans le contrôleur, car elles sont désactivées.

2) J'ai réalisé que vous avez annulé la classe sur votre soumission qui a un comportement invalide Si vous utilisez la validation de JQuery. Réf: http://docs.jquerer.com/plugins/validation/reference < / p>

J'espère que cela aide .. !!


1 commentaires

Homme Wow! Vous m'avez sauvé du temps avec votre premier point culminant. En effet, j'ai eu du javascript qui empêchait la double soumission. Excellent travail, merci!



0
votes

Vous devez définir l'égalité de l'ID du bouton (vue) et le nom de la variable à recevoir (contrôleur) La valeur du bouton sera envoyée à la variable xxx pré>

et votre contrôleur: p>

    [HttpPost]
    public ActionResult SignUp_Register(string btn, SignUpViewModel vm m)


0 commentaires