我有一个充满描述和 ID 号的数据库,表中的内容如下所示:
index.jsp
<table>
<tr>
<td>Name:</td>
<td>Id:</td>
</tr>
<c:forEach items="${employee}" var="employee">
<tr>
<td><c:out value="$employee.description"></c:out></td>
<td class="id-value" id="id"><c:out value="$employee.id"></c:out></td>
</tr>
</c:forEach>
</table>
效果很好,所有值都显示在表中。我还有一项服务,它将 ID 作为参数并返回特定员工的名字和姓氏 - 我想将其附加到每条记录的表中,以便它们在页面加载时显示 - 删除需要在数据库中存储更多值。这是我当前的代码:
function.js
$(document).ready(function(request, response) {
var id = $('#id').text();
var serviceUrl = 'http/service/example';
$.ajax({
type: 'GET',
url: serviceUrl + id,
cache: true,
success: function(data) {
$.map(JSON.parse(data), function(item) {
$('td.id-value').append(' ' + item.FNAME + ' ' + item.LNAME);
});
}
});
});
发生的情况是,当页面加载时,id 列充满了所有正确的 id 编号,但它们都一遍又一遍地附加相同的名字和姓氏(第一个 id 的名字/姓氏) .
如何才能针对该列中的每个值进行调用?
json 响应
{FNAME: "FIRSTNAME", LNAME: "LASTNAME"}
最佳答案
看起来您需要获取这样的元素列表
$("td[id='id']").each(function(e) {
var elem = $(this)
var id = elem.text();
$.ajax({
type: 'GET',
url: serviceUrl + id,
cache: true,
success: function(data) {
$.map(JSON.parse(data), function(item) {
elem.append(' ' + item.FNAME + ' ' + item.LNAME);
});
})
关于javascript - 使用 AJAX/JQUERY 将每个 <td> 中的数据附加到 JSP 生成的表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49201209/