簡體   English   中英

在Express.js中傳遞來自Jade的表單數據

[英]Pass form data from jade in Express.js

我有以下小型express.js應用程序和相應的.jade文件。 服務器正在運行,沒有錯誤,但是當我提交按鈕時,沒有任何反應。 我希望可以調用app.post(...),但事實並非如此。

有人可以指出我的錯誤嗎?

 var express = require('express'); var http = require('http'); var bodyParser = require ('body-parser'); var app = express(); var port = process.env.PORT || 9250; var host = process.env.HOST || "127.0.0.1"; var server = http.createServer(app).listen( port, host, function() { console.log("Server listening to %s:%d within %s environment", host, port, app.get('env')); }); app.set('views', __dirname + '/views'); app.engine('.html', require('jade').__express); app.use( bodyParser.json() ); app.use(bodyParser.urlencoded({ extended: true })); app.get('/', function(req, res) { res.sendFile(app.get('views') + '/index.html') }); app.get('/test', function(req, res) { res.render('home.jade'); }); app.post('/claim', function(req, res) { console.log('called'); res.redirect('/'); }); 
 doctype html html(lang="en") head title Hello body h1 Welcome p Description form(action="/claim", method="post") label Input something br input(type="text", name="address", size=50) br input(type="submit", value="Submit") 

您的問題是縮進:Jade不理解您的input是否包含在form

試試這個,它對我有用:

doctype html
html(lang="en")
  head
    title Hello

body
  h1 Welcome
  p Description

  form(action="/claim", method="post")
    label Input something
    br
    input(type="text", name="address", size=50)
    br
    input(type="submit", value="Submit")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM