2012-05-20 12 views
7

Possiedo un progetto ASP .NET MVC 3 e un problema con una delle mie viste 'Crea'.ASP .NET MVC 3 - Come inviare un modulo Ajax nidificato all'interno di un modulo HTML

I campi a discesa a cascata che ho implementato con i moduli ajax.

La vista è grosso modo - come questo:

@using (Html.BeginForm(...)) 
{ 
    @Html.MyDropDown1 

    using (Ajax.BeginForm(...)) 
    { 
     @Ajax.MyDropdown2 
     <input type="submit" value="Select" /> 
    } 

    using (Ajax.BeginForm(...)) 
    { 
     @Ajax.MyDropdown3 
     <input type="submit" value="Select" /> 
    } 

    <!-- other form fields --> 

    <input type="submit" value="Create" /> 
} 

Il problema è che i pulsanti di presentare all'interno delle forme Ajax in realtà invia il modulo HTML esterno.

C'è un modo per specificare il nome del modulo che voglio inviare?

Ho pensato di mettere i miei moduli ajax sopra il mio modulo html in modo da non creare nidi, ma ho bisogno dei valori degli elementi selezionati del menu a discesa nel mio post html.

Grazie, Pete

+4

HTML '

' s non può essere nidificato. – SLaks

+1

Fondamentalmente stai creando un codice HTML non valido. Devi ridisegnare ciò che stai cercando di fare. –

+0

@Rudie la mia ipotesi sarebbe che qualcuno potrebbe fare un downvote perché la nidificazione delle tabelle html mostra una "mancanza di sforzi di ricerca". (Non ho votato per questo, ma quella sorta di supervisione non otterrà neanche una conferma da me. –

risposta

7

Come sottolineato nei commenti non si può avere forme nidificate. Rimuovi tutti i bit using (Ajax.BeginForm(...)) e gestisci le tue chiamate ajax tramite jQuery (o altro).

+0

Capito, grazie. – PeteGO

Problemi correlati