我正在使用Google Maps Geocoding在我的JSP页面上搜索并显示表格行中的地址。从会话密钥中检索地址。每行都有一个地址和一个按钮,但目前该按钮仅适用于第一行中的地址。我是新手,如果术语不正确,请道歉。
会话密钥代码:
class myForm(forms.Form):
# ...
date = forms.DateField(
required=False,
widget=MonthYearWidget(years=xrange(2004,2010))
)
Google地图地理编码
<tbody>
<c:forEach items="${SKALLUSERS}" var="tempuser">
<tr>
<td scope="row"><c:out value="${tempuser.getId()}"/></td>
<td>${tempuser.id}</td>
<td>${tempuser.email}</td>
<td>${tempuser.password}</td>
<td>${tempuser.firstName}</td>
<td>${tempuser.lastName}</td>
<td>${tempuser.userType}</td>
<td><input id="address" type="textbox"
value="${tempuser.address}"></td>
<td><a href="updateUser.jsp">Update</a></td>
<td><input id="submit" type="button" value="Geocode"></td>
</tr>
</c:forEach>
</tbody>
答案 0 :(得分:0)
绝不是专家,我可能错了,但据我所知,ID应该是唯一的。
尝试在提交按钮或id的索引中添加一个类,例如“submit1”,“submit2”,然后使用:addEventListener
document.getElementById('submit').addEventListener
但是使用另一个其他选择器,比如getElementsByClassName,或者使用当前的选择器,如果你添加索引但是获取所有id为“submit”的元素。
答案 1 :(得分:0)
绝不是专家,我也可能是错的。
但是,如果只有forEach循环中表格第一行中的按钮按照你的说法工作,那么其余部分也应该有效。
除了你循环的数据(即items="${SKALLUSERS}"
)在某种程度上是不正确的,所以导致表的第一行的第一项是唯一具有预期值的项,而休息不是。