У меня есть этот код:
router.post('/expenseReport', ensureAuthenticated, async (req, res) => {
try {
const{ startDate, endDate } = req.body;
var expenseArray = [];
var count = 0;
var html = "<link rel='stylesheet' href='/css/freelancer.css' type='text/css'/>" +
"<script src='https://code.jquery.com/jquery-3.4.1.slim.min.js' integrity='sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n' crossorigin='anonymous'></script>" +
"<nav class='navbar navbar-expand-lg bg-secondary text-uppercase fixed-top' id='mainNav'><div class='container'>" +
"<a class='navbar-brand js-scroll-trigger' href='/dashboard'>The Traveling Coder</a>" +
"<button class='navbar-toggler navbar-toggler-right text-uppercase font-weight-bold bg-primary text-white rounded' type='button' data-toggle='collapse' data-target='#navbarResponsive' aria-controls='navbarResponsive' aria-expanded='false' aria-label='Toggle navigation'>Menu<i class='fas fa-bars'></i></button>" +
"<div class='collapse navbar-collapse' id='navbarResponsive'><ul class='navbar-nav ml-auto'><li class='nav-item mx-0 mx-lg-1'><a href='/admin' class='btn btn-primary'>Admin Panel</a></li><li class='nav-item mx-0 mx-lg-1'>" +
"<a href='/reports' class='btn btn-primary'>Reports</a></li><li class='nav-item mx-0 mx-lg-1'><a href='/users/logout' class='btn btn-primary'>Logout</a>" +
"</li></ul></div></div></nav>< br/><body><script src='https://kit.fontawesome.com/4a2ea255d5.js' crossorigin='anonymous'></script><div class='container-blog'><div class='container'><table class='table-primary table-bordered table' style='border-spacing: 10px;'>"+
"<tr><th>Reimburse?</th><th>Employee Name</th><th>Amount to be Reimbursed</th></tr><tr><form action='/expenseSubmit' method='post'>";
await Expense.find({reimbursed: false}, function(err,data){
if(err){
console.log('Error Fetching Model');
console.log(err);
}
expenseArray = data;
expenseArray.forEach(function(data){
console.log(data);
count = count+1;
html += "<td><input class='form-control' name=" + data._id + " type='checkbox' value='checked'></input></td>";
html += "<td>" + data.user + "</td>";
html += "<td> $" + data.amount + "</td>";
html += "</tr><tr>";
console.log(data._id);
});
html += "</tr></table><button class='btn btn-primary' type='submit'>Submit</button></form></div></body>";
html += "<script src='js/freelancer.js'></script>";
html += '<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script><script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script><script src="public/js/freelancer.js"></script><script src="public/js/jqBootstrapValidation.js"></script><script src="public/js/contact_me.js"></script>';
res.send(html);
})
}
catch (e){
res.send('error_msg');
console.log(e);
}
});
После этого он создал таблицу всех документов в базе данных, которые еще не были возмещены. Я хочу позволить пользователю установить флажки для возмещений, которые он хочет отправить. После того, как пользователь установил флажки и нажал кнопку «Отправить», я пытаюсь использовать foreach l oop для циклического переключения между флажками и выяснения, какие документы необходимо обновить.
//Expense Payout Backend
router.post('/expenseSubmit', ensureAuthenticated, async (req, res) => {
try {
await Expense.find({reimbursed: false}, function(err,data){
if(err){
console.log('Error Fetching Model');
console.log(err);
}
expenseArray = data;
expenseArray.forEach(function(data){
if(data._id === 'checked'){
console.log('it worked');
}
else{
console.log("didn't work");
}
})
})
}
catch (e){
res.send('error_msg');
console.log(e);
};
});
Это то, что у меня есть для второй страницы. Если я пытаюсь использовать req.body, он дает неопределенный. Есть ли более простой способ сделать это? Куда я иду не так?
Заранее спасибо: D