2012-05-22 31 views
0

我打算創建一個簡單的節點,並使用express.js腳本來計算3個數字。Express.js和表單驗證

在指數我有這樣的:

index.jade

!!! 5 
html 
    head 
    title Test 
    body 
    form(name='form1', method='post', action='/') 
     label(for='1') 
     input#1(type='text', name='1') 
     label(for='2') 
     input#2(type='text', name='2') 
     label(for='3') 
     input#3(type='text', name='3') 
     input(name='submit', type='button', value='submit') 
    #result 

而且我現在寫的服務器端 - 與REQ app.js和資源對象,但如何返回結果.. 。也導致= 1ID + 2ID + 3ID

app.js

var express = require('express'); 
    app = express.createServer(); 
app.use(express.bodyParser()); 
app.post('/', function(req, res){ 
    var i = req.param('1', null); 
    var j = req.param('2', null); 
    var k = req.param('3', null); 
    var r = i+j+k; 
    res.send(r); 

}); 

我如何發送結果(R)到格在index.jade ID結果......所以如何返回結果index.jade

也在這裏是引擎收錄代碼:http://pastebin.com/J9MRFCaE ...我是新的節點,並表達和愚蠢的問題抱歉...

回答

1

很簡單,只需撥打你的 「index.jade」 渲染傳遞數據(而不是 'res.send(R);'):

res.render('index', { 
    result: r 
}); 

而且在玉石文件中顯示 「結果」 變量:

#result #{result} 

關於jade codeexpress rendering的其他信息

+0

非常感謝 –

+0

我只得到不能得到/消息...爲什麼? –

+0

你必須聲明兩條路徑:一條與app.get('/',req,res),它只會調用res.render('index'),另一條與app.post('/',req,res)做計算並調用res.render('index',{result:r}) –