2013-06-30 12 views
5

Mam modeluPowiąż model z przyciskiem radiowym w ASP.NET MVC4?

public class SexModel 
{ 
    public SexModel() 
    { 

     this.Man = "Man"; 
     this.Woman = "Woman"; 
     this.ManId = 1; 
     this.WomanId = 2; 
     this.WomanSelected = this.ManSelected = false; 
    } 

    public bool ManSelected { get; set; } 
    public bool WomanSelected { get; set; } 
    public string Man { get; set; } 
    public string Woman { get; set; } 
    public int ManId { get; set; } 
    public int WomanId { get; set; } 

} 

utworzyć przycisk radiowy moim zdaniem

@Html.RadioButton(Model.Man, Model.ManId, Model.ManIsSelected, 
        new { @id = Model.ManId}) 


@Html.RadioButton(Model.Man, Model.WomanId, Model.WomanSelected, 
        new { @id = Model.WomanId }) 

użytkownik może wybrać mężczyzna lub kobieta radiowych przycisków na formularzu rejestracyjnym, ale dlaczego zawsze WomanSelected i ManSelected są zarówno fałszywe po kliknięciu przesłać przycisk formularza w mojej akcji?

+0

użytkowania 'Html.RadioButtonFor' zamiast tak:' Html.RadioButtonFor (m => m.ManIsSelected, Model.ManId) ' . Chociaż możesz wyjaśnić czym są 'Model.Man' i' Model.Sex.Man'? – Dai

+0

Przepraszam Edytowałem na Model.man to był błąd.i zmień go na @ Html.RadioButtonFor (m => m.ManSelected, Model.ManId, new {@class = "radio"}), ale to nie zadziałało – motevalizadeh

+4

' SexModel' - najlepsza nazwa klasy jeszcze +1 – James

Odpowiedz

5

powinien być wiążący przycisków radiowych w MVC poprzez RadioButtonFor tj

@Html.RadioButtonFor(m => m.ManSelected, m.Man); 
@Html.RadioButtonFor(m => m.WomanSelected, m.Woman); 
+0

moja akcja to [HttpPost] public ActionResult Index (SexModel sexModel) czy to prawda? z twoim rozwiązaniem nie działa jeszcze jestem zdezorientowany :) – motevalizadeh

+0

@motevallizadeh yep wygląda ok do mnie. Czy masz również 'public ActionResult Index() {return View (new SexModel()); } '? Opublikuj swój kontroler ... – James

+0

tak, mam to publicznie ActionResult Index() { SexModel ff = new SexModel(); Powrót widok (ff); } – motevalizadeh

Powiązane problemy