最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

Node.js with express:丢失表单数据,如果发现错误

IT培训 admin 4浏览 0评论

Node.js with express:丢失表单数据,如果发现错误

当我提交表单并发现错误(例如“缺少年龄”)时,​​整个表单数据将被清除干净。

我只需要为用户重新填充已经输入的数据。目前我正在尝试查看是否可以提取数据并将其传递给表单数据(如下所示)。任何帮助都是极好的。非常感谢。

这是我有的:

Controller.js

exports.createStore = async(req, res) => {
  var store = new Store(req.body);

  req.checkBody('age', 'Age cannot be blank').notEmpty();

  var errors = req.validationErrors();

  if (errors) {
    res.render('WebPage', {
      title: 'Webpage Title',
      errors: errors,
      formData: {
        age: req.body.age
      }
    });
  } else {
    //Do all the things
  }
}
回答如下:

您使用的是模板引擎,如哈巴狗或车把吗?如果是这样,您将需要获取formData.age的值并将其分配给html输入中的值

如果你使用ejs模板引擎,<input name="age" type="text" value="<%= formData.age || '' %>" />。基本上,您必须从render调用中获取值并使用它来设置HTML中的值

Node.js with express:丢失表单数据,如果发现错误

当我提交表单并发现错误(例如“缺少年龄”)时,​​整个表单数据将被清除干净。

我只需要为用户重新填充已经输入的数据。目前我正在尝试查看是否可以提取数据并将其传递给表单数据(如下所示)。任何帮助都是极好的。非常感谢。

这是我有的:

Controller.js

exports.createStore = async(req, res) => {
  var store = new Store(req.body);

  req.checkBody('age', 'Age cannot be blank').notEmpty();

  var errors = req.validationErrors();

  if (errors) {
    res.render('WebPage', {
      title: 'Webpage Title',
      errors: errors,
      formData: {
        age: req.body.age
      }
    });
  } else {
    //Do all the things
  }
}
回答如下:

您使用的是模板引擎,如哈巴狗或车把吗?如果是这样,您将需要获取formData.age的值并将其分配给html输入中的值

如果你使用ejs模板引擎,<input name="age" type="text" value="<%= formData.age || '' %>" />。基本上,您必须从render调用中获取值并使用它来设置HTML中的值

发布评论

评论列表 (0)

  1. 暂无评论