基本上,我使用模态形式的表单创建对象,并使用socket.io发送数据。我想更新提交表单后添加新项时显示的信息,而无需刷新页面。
添加功能
//TODO: Make validations for the cluster using Node-ORM2
add: function(m, db, socket) {
db.models.cluster.createAsync({ name : m.name, shop_id : m.shop, display_id : m.display}).then(function(result) {
socket.emit('message', {
success : true,
msg : 'Cluster successfuly added to the database.'
})
})
}
EJS代码:
<div class="row">
<% clusters.forEach(function(cluster) { %>
<div class="col-sm-12 col-md-3">
<div class="card">
<div class="card-header bg-light">
<%= cluster.name %>
</div>
<div class="card-body">
<ul id="cluster" data-name="<%= cluster.id %>" class="list-group">
<% if(cluster.devices.length == 0) { %>
<li class="list-group-item ignore">No active devices in this cluster.</li>
<% } %>
<% for(var i = 0; i < cluster.devices.length; i++) { %>
<li data-id="<%= cluster.devices[i].id %>" class="list-group-item"><%= cluster.devices[i].name %></li>
<% } %>
</ul>
</div>
</div>
</div>
<% }) %>
</div>