Maison > développement back-end > C++ > Comment gérer plusieurs boutons de soumission dans ASP.NET MVC?

Comment gérer plusieurs boutons de soumission dans ASP.NET MVC?

Barbara Streisand
Libérer: 2025-02-01 10:36:09
original
252 Les gens l'ont consulté

How to Handle Multiple Submit Buttons in ASP.NET MVC?

Boutons de soumission multiples dans le framework ASP.NET MVC

ASP.NET CORE MVC Framework permet d'utiliser plusieurs boutons de soumission sous une seule forme. Cela offre la flexibilité des différentes opérations en fonction du bouton Click.

Une façon de gérer plusieurs boutons de soumission est l'itinéraire basé sur l'attribut. Ce qui suit est un exemple:

Attribut:

Vue de rasoir:

<code class="language-csharp">[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = true)]
public class MultipleButtonAttribute : ActionNameSelectorAttribute
{
    public string Name { get; set; }
    public string Argument { get; set; }

    public override bool IsValidName(ControllerContext controllerContext, string actionName, MethodInfo methodInfo)
    {
        bool isValidName = false;
        string keyValue = string.Format("{0}:{1}", Name, Argument);
        ValueProviderResult value = controllerContext.Controller.ValueProvider.GetValue(keyValue);

        if (value != null)
        {
            controllerContext.Controller.ControllerContext.RouteData.Values[Name] = Argument;
            isValidName = true;
        }

        return isValidName;
    }
}</code>
Copier après la connexion

(Ici, nous devons inclure le code de rasoir réel, affichant des formulaires contenant deux boutons de soumission, "Enregistrer" et "Annuler". Étant donné que le texte d'origine n'est pas fourni, il ne peut pas être ajouté ici.) Contrôleur:

Grâce à ces paramètres, le bouton "Enregistrer" est soumis à l'opération "Enregistrer" et le bouton "Annuler" est soumis à l'opération "Annuler". Mise à jour des pages de rasoir:

<code class="language-csharp">[HttpPost]
[MultipleButton(Name = "action", Argument = "Save")]
public ActionResult Save(MessageModel mm) { /* 保存操作 */ }

[HttpPost]
[MultipleButton(Name = "action", Argument = "Cancel")]
public ActionResult Cancel(MessageModel mm) { /* 取消操作 */ }</code>
Copier après la connexion

Dans les pages de rasoir, les mêmes fonctionnalités sont fournies avec un terrain lors de l'ouverture de la boîte. Vous pouvez utiliser la syntaxe suivante sans utiliser d'attributs:

(Ici, il devrait inclure le code réel des pages de rasoir, affichant des formulaires contenant deux boutons de soumission, "Enregistrer" et "annuler" et comment passer les instructions . Étant donné que le texte d'origine n'est pas fourni, il ne peut pas être fourni, il ne peut pas être fourni, il ne peut pas être fourni, être ajouté ici.)

Dans votre programme de traitement de page, vous pouvez accéder à la valeur du bouton soumise par la clé "Button de soumission" dans l'ensemble de formulaires.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal