首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何动态填充jsp页面?

如何动态填充jsp页面?
EN

Stack Overflow用户
提问于 2016-02-08 22:52:46
回答 2查看 841关注 0票数 1

我在网站上工作,使用servlet和jsp。

我有不同类别的jsp页面,当我单击一个类别时,servlet重定向在另一个jsp页面上使用组件(台式机、膝上型计算机、平板.)但是,如果我单击(桌面)类别,只显示jsp页面中的桌面(组件),那么页面上有所有的类别,我需要这样做。

这是我的jsp页面和组件的servlet:

代码语言:javascript
复制
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);
}

这是jsp页面的一部分。

代码语言:javascript
复制
           <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>  
EN

回答 2

Stack Overflow用户

发布于 2016-02-08 23:02:06

您有多个选项,但最好的选择是使用Ajax框架,例如JQuery。您可以发出ajax请求并从服务器提取数据,并使用java脚本在视图上呈现该数据。在下拉时定义事件,更改-> Ajax调用,以获得下一个下拉数据->下一个调用。这将确保您的页面不刷新,并且UX更好。

否则,传统的方法--获取页面加载上的所有数据(全部是下拉数据)--使用JS数组定义数组,并在事件更改时获取数据。

票数 0
EN

Stack Overflow用户

发布于 2016-02-09 19:55:19

当您单击类别时,servlet可能返回到新页面。但是,您可以通过jsp文件中的以下方式来做到这一点。

  1. 将类别从Servlet中键入并设置,如果单击桌面,则设置如下所示。eg:request.setAttribute("categoryType",“桌面”);
  2. 在jsp文件中,在遍历元素之前,可以检查'categoryType'并显示项。例: if("desktops".equals(request.getAttribute("categoryType"))){ //显示项目。}

在for循环中,可以在组件类中有一个类似于'componentType‘的变量,也可以在此基础上进行检查。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35280907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档