我有一个HTML表,里面填充了数据库信息:
<sql:setDataSource
var="myDS"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/base_final"
user="root" password="Valeria"
/>
<sql:query var="listaTrabajadores" dataSource="${myDS}">
SELECT * FROM trabajador;
</sql:query>
<div class="well form-horizontal">
<table class="table table-responsive">
<label class="control-label">Lista de trabajadores</label>
<tr>
<th>ID</th>
<th>Nombre</th>
<th>Tipo de trabajador</th>
<th>Nombre de Usuario</th>
</tr>
<c:forEach var="trabajador" items="${listaTrabajadores.rows}">
<tr class="table-row"data-href="http://tutorialsplane.com">
<td style="cursor: pointer; color: blue;"><c:out value="${trabajador.id_trabajador}" /></td>
<td style="cursor: pointer; color: blue;"><c:out value="${trabajador.nombre}" /></td>
<td style="cursor: pointer; color: blue;"><c:out value="${trabajador.tipo_trabajador}" /></td>
<td style="cursor: pointer; color: blue;"><c:out value="${trabajador.usuario}" /></td>
</tr>
</c:forEach>
</table>
</div>
现在,我想要的是:点击一行时,它会重定向到另一个页面来编辑该记录。
我的问题基本上是如何使用JSP / Servlets将“trabajador”的ID传递给另一个页面?
此外,JSP如何区分所有
“$ {trabajador.id_trabajador}”
我的意思是,如何通过相同的值名称识别不同的值?
所以,我想假设我需要一个调用Get方法的Javascript函数,我已经有一个使行可以点击的函数:
<script type="text/javascript">
$(document).ready(function($) {
$(".table-row").click(function() {
window.document.location = $(this).data("href");
});
});
</script>
编辑记录本身不是问题,我已经有了必要的代码,我只需要将该ID传递给控制器。
提前致谢。
答案 0 :(得分:1)
传递ID的最佳选择是添加带编辑链接的新列
<tr class="table-row"data-href="http://tutorialsplane.com">
<td style="cursor: pointer; color: blue;"><c:out value="${trabajador.id_trabajador}" /></td>
.........whatever..........
<td ><a class="tbl-row-edit" data-id="put unique id here">Edit</a></td>
</tr>
然后在jquery中,
<script type="text/javascript">
$(document).ready(function($) {
$(".tbl-row-edit").click(function() {
window.location.href = "http://domain/edit.jsp?unique_id="+$(this).attr("data-id");
});
});
</script>