【发布时间】:2019-08-30 17:01:25
【问题描述】:
我正在使用 ajax GET 调用检索一些用户数据,并希望在 bootstrap card 中显示每个用户,以便我可以使用 jQuery 在页面上过滤这些数据。
目前,我获取数据,遍历每个用户并将一些卡片元素附加到<div class="card-deck"></div>:
jQuery:
$(document).ready(function() {
$.getJSON('/api/user/all')
.then(data => {
$.each(data, function (i, user) {
var userCard = '<div class="col-md-auto mb-4">' +
'<div class="card matches mx-auto" style="width: 18rem; height: 24rem;">' +
'<div class="card-body">' +
'<h5 class="card-title">' + user.username + '</h5>' +
'<p class="card-text">' + user.jobTitle + '</p>' +
'<p class="card-text">' + user.city + '</p>' +
'</div>' +
"</div>" +
"</div>";
$('#userList').append(userCard);
});
})
})
ejs:
<div class="row">
<div class="card-container align-items-left">
<div class="card-deck" id="userList">
// cards go here ...
</div>
</div>
</div>
这行得通,但是会有很多 html 用于构建卡片,所以我更愿意将整个用户对象(下面是 user)发送到 .ejs 文件,这样我就可以在那里制作卡片:
<div class="row">
<div class="card-container align-items-left">
<div class="card-deck" id="userList">
<div class="col-md-auto mb-4">
<div class="card matches mx-auto" style="width: 18rem; height: 24rem;">
<div class="card-body">
<h5 class="card-title"><%=user.username%></h5>
<p class="card-text"><%=user.jobTitle%></p>
<p class="card-text"><%=user.city%></p>
</div>
</div>
</div>
</div>
</div>
</div>
这是jQuery data 方法的工作吗?
【问题讨论】:
标签: javascript jquery ajax twitter-bootstrap ejs