Frage

Ich habe 2 Gruppen von Radio-Buttons mit Links zu jedem der Gruppe in meiner ASP.NET MVC-Anwendung entsprechen.

Im Folgenden ist der Bildschirm-shot für eine bessere Klarheit:

alt text http://img21.imageshack.us/img21/7959/radiogroups .png

Wenn ich den entsprechenden Link auswählen, sollte der Wert mit der bestimmten Gruppe zugeordnet an die Steuerung Aktion übergeben werden.

Zum Beispiel in dem obigen Fall, während „Verbindung 1“ klicken, werden die Werte A1 bzw. A2 sollte an die Steuerung Aktionsmethode weitergegeben.

Ich habe versucht, einen Beitrag zu den entsprechenden Maßnahmen, Verfahren zu tun, aber der Wert mit dem zweiten Glied verbunden ist auch geführt zu werden. Wie kann ich nur den ausgewählten Wert aus dem geklickt Link?

War es hilfreich?

Lösung

würde ich eine Javascript-Funktion als href des Links verwenden. Es würde den gewählten Wert der entsprechenden Radiobutton Gruppe gelesen und in einer URL-Zeichenfolge hinzufügen. Sie können die window.location eingestellt oder die Form Aktion gesetzt und einreichen.

Andere Tipps

Verwenden Sie Javascript, um die Werte der anderen Optionsfelder vor Absenden des Formulars zu löschen.

Andere Lösung kann ein verstecktes Feld errichtet werden und mit dem entsprechenden Wert mit Hilfe von Javascript bevölkern, wenn ein Link geklickt wird. Dann Sie den Wert dieses Feldes erhalten und über die Auswahlknöpfe vergessen.

Setzen Sie die zwei Radio-Buttons und den zugehörigen Link in eine eigene Form. Ersetzen Sie den Link mit einer Submit-Button (oder ein Bild einreichen, wenn Sie es wie ein Link aussehen wollen). Sie werden also zwei Formen haben beide Buchung auf dem gleichen Controller-Aktion. Geben Sie Ihre Absenden-Button ein name, die innerhalb der Aktion verwendet werden können, um zu bestimmen, welche Schaltfläche geklickt wurde. Sie könnten auch ein verstecktes Feld verwenden. Das erste, was in der Aktion zu tun ist, um zu bestimmen, welche Schaltfläche geklickt wurde, und dann die entsprechenden Anforderungswerte für die Optionsfelder lesen.

Eine weitere Alternative ist alles in der gleichen Form zu haben, mit zwei einreichen Tasten und verschiedene Namen.

@model MvcApplication2.Models.CountryModel
@using (Html.BeginForm())
{
            @Html.RadioButton("Gender", "Male" new { @checked = "checked" }) Male
            @Html.RadioButton("Gender", "Female")Female
            <input type="submit" text="submit"/>
}

MODEL

   public class CountryModel
    {
        public string Gender{ get; set; }

    }

REGLER

public ActionResult Index()
{                    
    return View();
}
[HttpPost]
public ActionResult Index(CountryModel model)
{
    //for radio button
    CountryModel dd = new CountryModel();
    string date1 = model.RDB;
    return View(model);
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top