0

Ich versuche, das zu ändern "asp-action =", leider konnte ich nicht finden, alles auf dem Internet "asp-action =" ändern ...Wie mit Ihrem ausgewählten Viewbag Net Core 2.0

Derzeit arbeite ich mit einem ViewBag, wo ich einen Wert aus dieser Liste auswählen kann.

Was ich will, ist: ich, dass ausgewählte Wert aus dem ViewBag im setzen wollen "asp-action = (hier)"

Image of my index
Image of my Post method


<form method="post" enctype="multipart/form-data" asp-controller="Parser" asp-action= "PostDrone"> 
    <div class="col-md-10"> 
     <p>Upload one or more files using this form:</p> 
     <select asp-items="@(new SelectList(@ViewBag.listofitems))"></select> 
     <input type="file" name="files" multiple /> 
    </div> 
</div> 
<div class="form-group"> 
    <div class="col-md-10"> 
     <input type="submit" value="Upload" /> 
    </div> 
</div> 

Zum Beispiel:

ich die „asp-action =“ wollen haben die Zeichenfolge „PostSchoen“ wenn ich PostSchoen vom viewbag Select ausgewählt

Ich hoffe, es ist verständlich, was ich gesagt habe

+0

Auch Ihre SELECT-Element Auswahl auch auf die server.use vorgelegt werden ' asp-for ", so dass es den Namen für Ihre Ansicht Modelleigenschaft generiert und Sie können das auf Ihrer Server-Seite verwenden, um verschiedene Dinge zu tun. – Shyju

Antwort

1

Was Sie will es tun sollte

mit JS von Client-Seite Entwicklung tun

Aber Sie haben drei Möglichkeiten:

1) Sie können es von JS mit

hier mit JQuery ein Beispiel ändern

es onReady Funktion Aktion Option hinzufügen müssen diese wird val ändern

<script> 
$(function() { 
    $("select").change(function(){ 
      //set form action to option val or get to whatever you need 
      $(this).closest("form").attr("action",$(this).val()); 
    }); 
}); 
</script> 

2) Senden von Daten an einen contoller Methode schalten sie es dann, indem sie Ihre wählen oder andere Optionen

Änderung in Sicht

<select name="typeOfUploading" asp-items="@(new 
SelectList(@ViewBag.listofitems))"></select> 

Änderung der Controller

 PostDrone(List<IFromFile> files, string typeOfUploading) 
{ 
//and use typeOfUploading this will be selected value from your select list 
} 

3) für Benutzer zur Verfügung stellen Zum einen diese Daten Wahl senden, die ihn mit den benötigten Aktion korrekte Sicht erzeugen

+0

Ich habe keine Erfahrung mit Jquery, gibt es keine andere Möglichkeit, dies zu tun? :( – Ogieeeeee

+0

@Ogieeeeee, überprüfen Sie mein Update – itikhomi

+0

Danke tho, aber ich habe keine Ahnung, wie die zweite oder dritte Optionen zu implementieren.: S Ich schätze die Zeit, die Sie verbringen, um mir zu helfen. – Ogieeeeee