我正在使用 servlet 和 jsp 开发网站。
我有不同类别的 jsp 页面,当我单击一个类别时,servlet 会重定向到另一个包含组件(台式机、笔记本电脑、平板电脑...)的 jsp 页面,但该页面上有所有类别,我需要这样做,如果我单击(桌面)类别以在 jsp 页面中仅显示桌面(组件)。
这是我的 jsp 页面和组件的 servlet:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Collection<Components> components;
components= componentsdao.getAll() -- geting all components from database
request.setAttribute("components", komponenta);
request.getRequestDispatcher("pcitem.jsp").forward(request, response);
}
and this is part of jsp page
<c:forEach var="i" items="${requestScope.components}">
<p>
${i.nameofcomponent}
</p>
<div >
<h6>Description ${i.descriptionoofcomponent}</h6>
</div>
<div ">
<h6>Price ${i.priceofcomponent}</h6>
</div>
<div >
<h6>Official site ${i.link}</h6>
</div>
</c:forEach>
最佳答案
您有多种选择,但最好的选择是使用 Ajax 框架,例如 JQuery。您可以发出 ajax 请求并从服务器提取数据,然后使用 java 脚本在 View 上呈现该数据。定义下拉更改事件 -> Ajax 调用以获取下一个下拉数据 -> 下一个调用。这将确保您的页面不会刷新并且用户体验更好。
否则采用老式方式 - 获取页面加载时的所有数据(所有下拉数据) - 使用 JS 数组定义数组并获取事件更改时的数据。
关于java - 如何动态填充jsp页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35280907/