2012-04-14 21 views
10

Qual è l'errore con il seguente modello di modulo di giada? Non riesco a farlo per inviare valori.Invia modulo di giada

div 
    form(action='/signup',method='post') 
    div(data-role='fieldcontain') 
     fieldset(data-role='controlgroup') 
     label(for='email') email 
     input(id='email',type='text',value='',placeholder='@') 
    div#passworddiv(data-role='fieldcontain') 
     fieldset(data-role='controlgroup 
     label(for='password') password 
     input(id='password',type='password',value='',placeholder='') 
    div(id='hiddendiv',data-role='fieldcontain') 
     fieldset(data-role='controlgroup') 
     label(for='hidden_password') password 
     input(id='hidden_password',type='text',value='',placeholder='') 
    div(data-role='fieldcontain') 
     fieldset(data-type='vertical', data-role='controlgroup') 
     label(for='showpass') show password 
     input(id='showpass',type='checkbox') 
    div(data-role='fieldcontain') 
     input(type='submit',value='Sign Up',data-transition='fade', data-theme='c') 

risposta

31

Il problema è dovuto al fatto che non è stato assegnato alcun nome ai campi di input.

app.post('/signup', function(req,res){ 
    console.log(req.body); 
}) 

Returns: {}

Se si modifica il modulo al seguente:

div 
    form(action='/signup',method='post') 
    div(data-role='fieldcontain') 
     fieldset(data-role='controlgroup') 
     label(for='email') email 
      input(id='email',type='text',value='',placeholder='@',name='email') 
    div#passworddiv(data-role='fieldcontain') 
     fieldset(data-role='controlgroup') 
     label(for='password') password 
      input(id='password',type='password',value='',placeholder='',name='password') 
    div(id='hiddendiv',data-role='fieldcontain') 
     fieldset(data-role='controlgroup') 
     label(for='hidden_password') password 
      input(id='hidden_password',type='text',value='',placeholder='',name='password2') 
    div(data-role='fieldcontain') 
     fieldset(data-type='vertical', data-role='controlgroup')           
     label(for='showpass') show password 
     input(id='showpass',type='checkbox') 
    div(data-role='fieldcontain') 
     input(type='submit',value='Sign Up',data-transition='fade', data-theme='c') 

Dopo aver inserito alcuni dati,

app.post('/signup', function(req,res){ 
    console.log(req.body); 
}) 

restituisce:

{ email: '[email protected]', 
    password: 'asdf', 
    password2: 'asdf' } 
+0

Grazie mille. Funziona –