首页 > 解决方案 > 如何在node.js的不同数据库表中保存非输入字段(来自DB)?

问题描述

我正在尝试将用户登录 ID(当用户登录应用程序时出现)保存在不同的表中(User_assessment)。但是 user_assessment 表有不同的输入表单。所以当尝试仅导出用户输入数据时,我只能保存评估数据而不是用户登录详细信息。我想用用户登录详细信息保存评估数据,所以当我检查历史数据时,只为登录的用户提供。导出代码和 HTMl 如下所示:-

HTML:-部分代码

<div class="form-group">
                            <label for="fullName"><b>User Name : </b></label>
                            <a name = "namehelp">{{user.User_Name}}</a>
                            <label for="fullName"><b>User Email : </b></label>
                            <a name = "UserEmail">{{user.User_Email}}</a>
                          </div>
                          <div class="form-group">
                            <label for="fullName">Team/Project Name </label>
                            <input type="name" required class="form-control" name="TeamName" id="fullName" aria-describedby="nameHelp" placeholder="Enter full project name" >
                            <small id="nameHelp" class="form-text text-muted">Please enter your team/project name.</small>
                          </div>

auth.js :-

exports.assessment = (req,res) => {
    console.log(req.body);

标签: htmlnode.jsdatabase

解决方案


在您的表单上设置 onsubmit 并在其功能中首先使用 e.preventDefault() 停止表单的默认行为,然后获取您的输入数据并添加您的登录 ID,然后将它们与 ajax 请求一起发送到 nodejs。

<form id="myForm" onsubmit="yourFunction(event)" >
<!-- some inputs -->
</form>

yourFunction(e){
  e.preventDefault();
  let data = new FormData(e.target)
  data.append("loginId" , yourLoginId)

  // create XMLHttpRequest and send data to nodejs
}

推荐阅读