无法提交表格。绑定未应用

时间:2014-04-02 07:35:53

标签: javascript node.js express pug

我对node.js和jade相当新。我正在尝试做一个表单提交,并以某种方式无法使绑定正确。代码如下所示:

index.jade:

.opinion-form
      form(name="submitResponse",method="post",action="/submitResponse")
      .row
        .col-lg-12.col-md-12
          input(id="feedbackYes", type="radio", name="feedback",value=1)
          label(for="feedbackYes") Oh yeah!
      .row
        .col-lg-12.col-md-12
          input(id="feedbackNo", type="radio", name="feedback",value=0)
          label(for="feedbackNo") Nope, it's not for me.
      input.btn.btn-primary(type="submit", value="SUBMIT")
    .row
      .col-lg-12.col-md-12

app.js

app.post('/submitResponse', routes.submitResponse(dbClient));

index.js

exports.submitResponse = function(dbClient) {
return function(req, res) {
    var feedback = req.body.feedback;
    // save the value to database using the dbClient
    console.log(feedback);
    res.render('thankyou')
  }
}

这出现了什么问题?

2 个答案:

答案 0 :(得分:0)

首先不要直接调用routes.submitResponse(),而是让表达自己。

app.js

app.post('submitResponse',routes.submitResponse);

然后对于路由,如果不想要中间件,那么像中间件一样编写它的方式也会尝试使用res.jsonres.send或{{1}结束请求}}。它应该是这样的

res.render

index.js

答案 1 :(得分:0)

实际上问题是按钮不在表单内部,这就是没有对它应用绑定的原因。 JADE及其缩进.. :(。现在修复..