2009-03-12 2 views
0

Thare sind zwei Formen auf einer Seite ersten für die Suche und eine andere zum Löschen ....Geben von Parametern in MVC

<table><tr><td> 
<% using(Html.BeginForm("ViewList","ControllerName", 
[values],FormMethod.Post,new{id="viewListForm"})) 
{ %> 
    Name: <%=Html.TextBox("Name", "[value]", new { maxlength = "250" })%> 
    Location: <%=Html.TextBox("Location", "[Value]", new { maxlength = "250" })%> 
    <input type="submit" id="Search" name="Search" value="Search" /> 

<% } %> 
</td></tr> 
<tr><td> 
<% using(Html.BeginForm("DeleteList","ControllerName", 
     new { name=?,location=? },[values],FormMethod.Post, 
      new{id="deleteListForm"})) 
{ %> 
    [here the code for all items displayed in a table.] 

    <input type="submit" id="Delete" name="Delete" value="Delete" /> 

When delete buttom pressed i need to pass two parameters ie name 
and location. The values of name and location are in the above viewListForm. 
How i take this value from the viewListForm at run time ? 

<% } %> 
</td></tr><table> 
+0

Schnell Jungs nehmen, ist diese Frage dringend. Beantworte es vor allen anderen! –

+0

Die Frage wird besser! ;-) – Shoban

Antwort

0

verwendet Javascript versteckte Eingänge zu füllen.

Oder verwenden Sie Javascript, um die Aktion des Suchformulars dynamisch zu ändern.

Oder dynamisch erstellen Sie ein Formular in jQuery zum Beispiel und senden Sie es.

+0

und wenn der Benutzer kein Javascript hat? – roryf

0

Sie müssen eine Controller-Aktion haben, die eine Formcollection als Parameter

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult ActionName(FormCollection collection) 
{ 
    // you can pull key value pair from the posted collection 
    string formValue = collection["InputId"] 
} 
+1

Zusätzliche Werte, die nicht im Formular enthalten sind, können als ausgeblendete Parameter oder als Routenwerte hinzugefügt werden. Routenwerte müssen korrekt an eine Aktionsmethode mit den Routennamen als Parameter weitergeleitet werden. – tarn