Flo*_*ain 0 javascript ejs node.js express
我正在使用带有express和ejs的nodejs.
互联网上的每一个人都会问如何将价值从节点传递到视图,但相反呢?
例如,我要求我的用户在表单中输入一个字符串,当用户单击该按钮时,如何获取该字符串而不将其作为url中的参数传递?
表格:
<div class="container">
<form style="width:50%">
<div class="form-group">
<label for="text">Name of the product</label>
<input type="text" class="form-control" id="pName">
</div>
<div class="form-group">
<label for="text">Reciever</label>
<input type="text" class="form-control" id="reciever">
</div>
<div class="form-group">
<label for="text">Location</label>
<input type="text" class="form-control" id="location">
</div>
<!-- <div class="checkbox">
<label><input type="checkbox"> Remember me</label>
</div>-->
<button type="submit" class="btn btn-default">Submit</button>
</form>
Run Code Online (Sandbox Code Playgroud)
app.js
var express = require('express');
var app = express();
//ALL GLOBAL VARIABLES
var port = 8080;
app.get('/', function(req, res) {
res.render('index.ejs');
});
app.get('/barcode', function(req,res) {
res.render('barcode.ejs');
});
app.listen(port);
Run Code Online (Sandbox Code Playgroud)
我知道我可以这样做:
app.get('/url/:parameter', function(req.res) {
var foo = req.params.parameter;
}
Run Code Online (Sandbox Code Playgroud)
但如果我不想使用URL,是否可以检索数据?
使用POST作为html表单的方法
<form action="/myapi" method="post">
<input type="text" class="form-control" id="pName" name="pName">
<button type="submit" class="btn btn-default">Submit</button>
</form>
Run Code Online (Sandbox Code Playgroud)
然后app.post在后端处理客户端表单"action"
app.post('/myapi', function(req, res) {
res.send('The pName is "' + req.body.pName + '".');
});
Run Code Online (Sandbox Code Playgroud)