当前位置: 首页 > 面试题库 >

在Struts 2中如何做

胡鸿禧
2023-03-14
问题内容

我正在尝试为HTML网页构建滑块。它从struts动作从ArrayList(名为testList)获取值。我想以这种模式一次显示列表中的6个值。例如:

如果数组的大小为26,{0,1,2,3,4,5},则{6,7,8,9,10,11},然后是{11,12,13,14,15}
..和因此,直到{24,25},即使其为零也可以保留其他值。

每个循环都类似: for(i=0;i<size;i+6){}

但是目前我以这种模式从列表中获取值:

{0,1,2,3,4,5}然后{1,2,3,4,5,6}然后{2,3,4,5,6,7} ..

这是因为索引(#status.index)以以下模式{0,1,2,3 …}迭代,所以我希望索引每次增加6,而不是0到1到2等。

添加了step =“ 6”,但这不起作用。

以下是我的代码示例:

 <ul class="slider">
        <s:iterator step="6" status="status" value="testList" >
        <li> <!-- FIRST SLOT OF DATA --> 
            <div class="rightSubContainer">
                    <s:iterator value="testList[#status.index]" >
                        <table >
                            <tr>
                                <th>
                                    <p align="center"><b ><font color="#151B54"><s:property value="name" /></font></b></p>
                                </th>
                            </tr>
                        </table>
                        <!-- ...values  -->
                    </s:iterator>       
            </div>
            <div class="rightSubContainer">
                    <s:iterator value="testList[#status.index+1] " >
                        <table >
                            <tr>
                                <th>
                                    <p align="center"><b ><font color="#151B54"><s:property value="name" /></font></b></p>
                                </th>
                            </tr>
                        </table>
                        <!-- ...values  -->
                    </s:iterator>       
            </div>
            <div class="rightSubContainer">
                    <s:iterator value="testList[#status.index+2]" >
                        <table >
                            <tr>
                                <th>
                                    <p align="center"><b ><font color="#151B54"><s:property value="name" /></font></b></p>
                                </th>
                            </tr>
                        </table>
                        <!-- ...values  -->
                    </s:iterator>   
            </div>
            <!-- ... and so on.. upto 6 values -->

问题答案:

为什么每个值一个表?为什么1337个迭代器而不是单个迭代器?为什么<b><font>等等,而不是使用CSS?

顺便说一句,您只需要使用%(模块运算符)来检查当前位置是否为6的倍数;否则为0。如果是,则需要拆分<li>;。

请注意,IteratorStatus.count这与相同IteratorStatus.index + 1,因为它是1-based;

丑陋的方式:

<ul class="slider">
    <li>
        <s:iterator status="status" value="testList" >          
                <table >
                    <tr>
                        <th>
                            <p align="center"><b ><font color="#151B54">
                                <s:property value="name" />
                            </font></b></p>
                        </th>
                    </tr>
                </table>
            <s:if test="%{#status.count % 6 == 0}" >
                </li>
                <li>
            </s:if>
        </s:iterator>
    </li>
</ul>

更好的方法:

<ul class="slider">
    <li>
        <s:iterator status="status" value="testList" >          
                <p>
                    <s:property value="name" />
                </p>
            <s:if test="%{#status.count % 6 == 0}" >
                </li>
                <li>
            </s:if>
        </s:iterator>
    </li>
</ul>

并且在CSS中(或在元素的<style></style>块内<head>

ul.slider > li > p {
    text-align: center;
    color: #151B54;
    font-weight: bold;
    background-color: #ddd;
}


 类似资料:
  • 问题内容: 在我的Web应用程序中,当用户注销时,他应该无权访问他登录时先前查看过的页面。但是,由于浏览器缓存,他可以在单击后退按钮时查看这些页面。 我定义了一个拦截器来处理此问题: 并在: 发生的事情是,添加此代码后,运行应用程序时出现404错误。 我尝试在页面中添加响应标题: 但是必须将它一个接一个地添加到所有页面上是很麻烦的。另外,用户始终可以重新提交表单并再次访问那些页面,而无需实际输入其

  • 问题内容: 我已经阅读了各种教程和论坛,但是还没有找到结合使用Spring安全性和struts2来研究编码的有效示例。当前的大多数示例都在XML文件中使用预定义的用户名和密码,但未连接到数据库。 如果您知道任何示例或教程,请告诉我。 问题答案: 您可能应该从以下教程开始: Spring Security第1部分–具有数据库的简单登录应用程序 Spring Security第2部分–密码加密,自定义

  • 我试图在浏览器中打开xls工作表,而不是在MS Excel中。我尝试使用但是不起作用。这是execute方法的完整代码: 无论如何,这可以从Microsoft Office excel应用程序打开excel,但只能通过从NetBeans运行项目。如果我尝试在没有Netbeans的情况下从Tomcat打开它,它是不起作用的。

  • 问题内容: 我有一个动作类,其中定义了许多动作方法,还定义了适当的getter和setter方法。我有一些操作方法,可以通过从jQuery调用它们来从json中获取数据。但是当我获取json数据时,它包括为getter和setter定义的所有字段,但是我只想获取由我要调用的方法填充的字段。例如- 当我通过jQuery调用方法m2并获得json响应时 但我只想要 问题答案: 默认情况下,result

  • 但这不起作用,当我进入“loginriuscito.jsp”时,我只看到“welcome:”

  • 问题内容: 我在一个动作类中具有getter和setter方法的多个属性。 这些属性不能执行相同的任务。实际上,它们响应不同的业务服务请求,或者它们与不同的动作有关。 我的问题是这样的: 我需要过滤掉数据并仅返回属性集中的部分属性,因为并非所有属性都在单个request(action)中是必需的。 PS:实际上,我可能已经将这些动作或业务逻辑分为几个类,而不是将它们放在一个动作类中。但是,我认为它

  • 我正在用JavaStruts开发一个博客,我想知道什么时候打开一篇文章(所有记录都由数据库显示),而不是如何让链接看到下一篇文章和上一篇文章。 请帮我做链接。

  • 以下测验提供了与Struts2 Framework相关的多项选择题(MCQ)。 您必须阅读所有给定的答案并单击正确的答案。 如果您不确定答案,则可以使用“ Show Answer按钮Show Answer 。 您可以使用“ Next Quiz按钮在Next Quiz中检查新的问题集。 问题1 - Struts 2中存在以下哪个特性? A - POJO表单和POJO操作 B - 标签支持 C - A