2013-06-30 11 views
5

Ho un modelloAssociare un modello al pulsante di opzione in 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; } 

} 

creare un pulsante di scelta sul mio punto di vista

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


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

utente può selezionare uomo o radiofoniche donna pulsanti sul modulo di registrazione, ma perché sempre WomanSelected e ManSelected sono entrambi falsi dopo lo scatto invia il pulsante del modulo nella mia azione?

+0

Usa 'Html.RadioButtonFor' invece, in questo modo:' Html.RadioButtonFor (m => m.ManIsSelected, Model.ManId) ' . Però puoi spiegare cosa sono 'Model.Man' e' Model.Sex.Man'? – Dai

+0

scusate l'ho modificato in Model.man è stato un errore. Lo ho cambiato in @ Html.RadioButtonFor (m => m.ManSelected, Model.ManId, new {@class = "radio"}) ma non ha funzionato – motevalizadeh

+4

' SexModel' - nome della classe migliore ancora +1 – James

risposta

5

Si dovrebbe essere vincolante tuoi pulsanti di opzione in MVC via RadioButtonFor cioè

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

la mia azione è [HttpPost] indice ActionResult pubblico (SexModel sexModel) è corretto? con la tua soluzione non funziona ancora Sono confuso :) – motevalizadeh

+0

@motevallizadeh mi sembra ok per me. Hai anche 'public ActionResult Index() {return View (new SexModel()); } '? Pubblica il tuo controller ... – James

+0

sì ce l'ho public ActionResult Index() { SexModel ff = new SexModel(); return View (ff); } – motevalizadeh

Problemi correlati