【发布时间】:2025-12-07 03:25:01
【问题描述】:
我有一个充满描述和 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"}
【问题讨论】:
-
所有带有 id 的
<td>元素都具有相同的id属性值。这可能是根本原因。 -
@Ivan 更改
id 的名称并没有改变任何东西。 你把它改成什么了? @Ivan 的观点是你所有的行都有相同的 id,不管那是什么。@Drewness 我将id 更改为 #test-id,但我只是在我希望附加服务调用的值的单行上声明一个 id。问题是该服务只被调用一次并重复它找到的第一个 id 的值,而不是对每一行中的每个 id 进行调用。我不知道如何做到这一点。
标签: javascript java jquery html ajax