背景 我有 - Search.jsp,SearchResult.java和SearchDetails.java文件。我需要在表单提交上通过jquery /(ajax?)将搜索值发布到SearchResult servlet,并将结果显示在1列表中。 之后,用户可以单击任何行以在同一页面中查看该结果的详细信息。在这种情况下,我的计划是在特定行的click事件上,我必须通过jquery-ajax调用SearchDetails servlet。
问题: 我现在可以在动态填充的表中获取搜索结果,并且在每行中我将结果填充在/ link标记内。 1.请告诉我如何在表格中填充结果,以便我可以进行分页等。 2.如何使用存储在动态填充的td中的隐藏值来调用SearchDetails servlet。
我的经历:我正在研究过去1个月的jsp,servlet,jquery-ajax。但是.net持续了7年。
Search.jsp:
<script>
$(document).ready(function() {
$('#btnSearch').click(function() {
$mobileNo = document.getElementById("txtMobileNo").value;
$.post('BE_AccountSearch', {mobileNo:$mobileNo},
function(responseText){
$('#dvSearchResultSub').html(responseText);
});
});
});
</script>
<form id="form" method="post">
<input name="txtMobileNo" id="txtMobileNo" autofocus>
<input type="button" id="btnSearch" value="Search"/>
<div id="dvSearchResultSub"></div>
</form>
SearchResult.java(servlet):
out.println("<table>");
for (int i = 0; i < memberList.size(); i++){
out.println("<tr>"); out.println("<td>");
out.println("<a id=\"memberList\" href=\"BE_AccountDetails?uln=" + memberList.get(i).getUsername() + "\">");
out.println(memberList.get(i).getUsername());
out.println("</a>");
out.println("</td>");
out.println("</tr>");
}
out.println("</table>");
out.println("</div>");
out.flush();
out.close();
答案 0 :(得分:0)
使用Java MVC(模型视图控制器)将参数从jsp传递到Java并返回到Jsp。您可以获得一些帮助here。
使用AJAX在jsp上填充表格时,可以使用Datatables。数据表在表格上提供了许多功能,如分页,搜索,排序等。
我希望这会有所帮助。如果您已经开始使用代码,请提供一些代码以及您的问题。
答案 1 :(得分:0)
我用于jqGrid这样的任务。它嵌入了ajax。您所要做的就是将其插入页面并创建处理查询的servlet / controller。
从你的代码看起来一切都很好。不知道问题出在哪里。尝试在启用FireBug的FireFox中运行它并查看跟踪 - 如果它没有显示动态结果,则应该有错误。