2012-05-22 36 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}) –