让我说我有
router.get('/read', function(request, response) {
res.send({"result": "Success sent from routes/index.js."});
});
如何输出带有数据的模板。如果我使用res.send(),我不能使用res.render()吗?
如果我的用户位于/read
并单击按钮以使用ajax发送一些数据,我想在/read
上的另一个模板中显示该数据
编辑:解决这个问题的一种方法是在返回数据时创建一个字符串(或者不是)
success : function(data){
$(".fillIn").html("<p style = 'color:green;'>" + data + "</p>")
}
我不想要一个字符串。
图片显示在一页&#34; /&#34;有2个按钮,通过单击每个按钮,您可以发送数据,并且数据可以显示在右侧,具体取决于单击的按钮,填写了一些数据的表单或填充了一些数据的表格。我使用ajax在click上发送数据。将有不同的形式和不同的样式。这就是我想添加模板的原因。我可以使用.load()使用HTML来做到这一点我想但我无法弄清楚如何处理这个玉。
这是我的另一个Question
答案 0 :(得分:1)
在index.js文件中,使用以下命令捕获GET和POST请求并呈现不同的响应:
app.get('/read', function(req, res, next){
res.render('emptyFormTemplate');
});
app.post('/read', function(req, res, next){
res.render('dataTableTemplate', {
name: req.body.name,
email: req.body.email
});
});
在客户端,你可以这样将POST数据发送到/读取。您可以在上面的示例中的emptyFormTemplate
中包含此脚本。
$('#myForm').submit(function(event){
var formData = {
'name' : $('input[name=name]').val(),
'email' : $('input[name=email]').val()
};
$.ajax({
type: 'POST',
url: '/read',
data: formData,
dataType: 'json'
});
});