单击提交时,表单不会回发,jade,node.js

单击提交时,表单不会回发,jade,node.js,node.js,pug,Node.js,Pug,我有一个用jade创建的表单,单击submit按钮时它不会回发。 我研究了许多类似的问题,尝试了解决方案,包括确保所有输入字段都有一个“名称”,我确保所有输入字段都有一个名称,但表单仍然没有发回,如图所示 //视图/用户/new.jade h1新用户 表单(action=“/users”,method=“POST”) p 标签(for=“username”)用户名 输入#用户名(name=“username”) p 标签(for=“name”)名称 输入#name(name=“name”) p

我有一个用jade创建的表单,单击submit按钮时它不会回发。 我研究了许多类似的问题,尝试了解决方案,包括确保所有输入字段都有一个“名称”,我确保所有输入字段都有一个名称,但表单仍然没有发回,如图所示

//视图/用户/new.jade

h1新用户

表单(action=“/users”,method=“POST”)

p

标签(for=“username”)用户名

输入#用户名(name=“username”)

p

标签(for=“name”)名称

输入#name(name=“name”)

p 标签(for=“bio”)bio

textarea#bio(name=“bio”)

p 输入(type=“submit”,value=“Create”)

邮件处理程序是这样的

//路线/用户

module.exports=function(app){

    app.post('/users',function(req,res){
        if(users[req.body.username]){ //Check if user exists
            res.send('Confllict, 409')
        }else
        {
            //add to users list
            users[req.body.username]=req.body;
            res.redirect('/users');
        }
 });
};

Jade使用缩进来显示标签之间的内容

 p
        this is inside the p tags
还有速记

p this is also in the tag

在原始代码中,您告诉Jade有一个p标记,然后下一行在p标记之外。

可能是Jade模板中的空白问题。请编辑您的帖子,使
new.jade
代码位于代码块中。这将使调试您的问题变得更容易。我不确定它是什么,因为我对jade知之甚少,但也许您是对的,因为我刚刚发现,当我去掉所有的“p”标记时,它会起作用,但当我把p标记放回时,我也会遇到同样的问题。我只是放回了p标记并删除了空格,您是对的,这是空白,感谢白色空间在玉中有意义。我猜“p”标记的问题是
new.jade
中的缩进问题。这就是为什么我要求您编辑您的帖子,以便new.jade源代码显示为代码。现在所有的缩进都消失在你的帖子里了,我把p标签放回原处,去掉了空格,所以现在可以了,谢谢