Я использую e js и пытаюсь получить некоторые данные во внешнем интерфейсе, но я говорю: собрание не определено, любой может подсказать мне, как это исправить.
полный контроллер paste.ofcode.org/ugq8gAVPUUd6W4xRZTpu4A
Данные примечания уже отображаются в таблице, находящейся во вкладках, и я хочу показать ее в другом месте, которое показано ниже код e js,
e js код:
<% meeting.subjects.forEach(function(subject){ %>
<div class="col-xs-3 col-sm-3 col-md-3">
<div class="col-md-2 col-xs-12 pending-task-btn">
<span href="" class="btn btn-success btn-lg dashboard-icon" style="width: 200px; height: 150px;">
<p style="padding-top: 15px; font-size: 25px;
font-weight: bold;"><%= meeting.subject %></p>
<p style="font-size: 25px; font-weight: bold;">date</p>
<p style="font-size: 25px; font-weight: bold;">Upcoming</p>
</span>
</div>
</div>
<% }) %>
nodejs код контроллера:
var meetingJson = function (req, res) {
req.selectSortColumn = function (sortColumn, sortDir) {
switch (sortColumn) {
case 0 :
return {'subject': sortDir};
case 1:
return {'location': sortDir};
case 2:
return {'date': sortDir};
default:
return {'subject': sortDir};
}
};
dataTableUtil(req, function (options) {
//search, search query for word search
var search = options.search || '.*';
var findCriteria = {};
var searchCriteria = [{
$or: [
{'subject': {$regex: search, $options: 'i'}},
{'location': {$regex: search, $options: 'i'}}
]
}];
findCriteria['$and'] = searchCriteria;
findCriteria.attendees = {$elemMatch: {user: req.user._id}};
//set find criteria based on the type of the meeting
if (req.params.type == 'past') {
findCriteria['$and'].push({
$or: [
{date: {$lt: moment().startOf('day')}},
{status: 'completed'}
]});
} else {
findCriteria.date = {$gte: moment().startOf('day')};
findCriteria.status = 'upcoming';
}
//get the meeting records and its count.
async.parallel({
data: function (cbListJson) {
getMeetings(req, options, findCriteria, cbListJson);
},
count: function (cbListJson) {
getMeetingsCount(req, options, findCriteria, cbListJson);
}
}, function (err, results) {
if (err) {
logger.error(err);
res.json({error: true});
return;
}
//create records of meeting in the format of data table.
createMeetingRecords(req, results, function (err, responseJson) {
if (err) {
logger.error(err);
res.json({error: true});
return;
}
res.json(responseJson);
});
});
});
};
где данные бэкэнда уже показывает с контроллера:
<div role="tabpanel">
<!-- Nav tabs -->
<ul class="nav nav-tabs" role="tablist">
<li role="presentation" class="active"><a href="#tab1" role="tab" data-toggle="tab">Upcoming</a>
</li>
<li role="presentation"><a href="#tab2" role="tab" data-toggle="tab">Completed</a>
</li>
<li role="presentation"><a href="#tab3" role="tab" data-toggle="tab">Tasks</a>
</li>
</ul>
<!-- Tab panes -->
<div class="tab-content">
<input type="hidden" id="pdfUrl" value="<%=pdfUrl%>">
<div role="tabpanel" class="tab-pane active fade in" id="tab1">
<table class="display table" id="meeting-upcoming-table">
<thead>
<tr>
<th>
Subject
</th>
<th>
Location
</th>
<th>
Date
</th>
<th>
Action
</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
<div role="tabpanel" class="tab-pane fade in" id="tab2">
<table class="display table" id="meeting-past-table">
<thead>
<tr>
<th>
Subject
</th>
<th>
Location
</th>
<th>
Date
</th>
<th>
Action
</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
<div role="tabpanel" class="tab-pane fade in" id="tab3">
<div class="row">
<input type="hidden" id="taskUserId" value="<%=currentUser._id%>">
<div class="form-group col-md-2">
<label for="status" class="control-label">Status</label>
<select class="form-control" id="status">
<option value="pending" selected>Pending</option>
<option value="completed">Completed</option>
</select>
</div>
<%if(isAdmin){%>
<div class="form-group col-md-3">
<label for="status" class=" col-md-12">User</label>
<select class="form-control col-md-12" style="width:100%" name="taskUser" id="taskUser">
<option selected value="all">All</option>
</select>
</div>
<%}%>
</div>
<table class="display table" id="task-table">
<thead>
<tr>
<th>
Type
</th>
<th>
Note
</th>
<th>
Due Date
</th>
<th>
Task For
</th>
<th>
Actions
</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>