以下Jade表单模板有什么错误?我无法提交值。
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')
问题是因为您没有给任何输入字段一个名称。
app.post('/signup', function(req,res){ console.log(req.body); })
返回值: {}
{}
如果将表单编辑为以下内容:
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')
输入一些数据后,
返回:
{ email: 'testing@fake.com', password: 'asdf', password2: 'asdf' }