java - 在scriptlet数组索引中访问struts迭代器的索引值

标签 java jsp struts2 ognl struts-tags

使用 Struts2,我有一个用逗号分隔的 String 我的图像标题。在迭代图像以在 JSP 上呈现时,我需要显示标题以及特定图像,并且无法获取任何特定标记以通过分隔符拆分标题 String 并访问特定标题。我正在尝试下面的代码,但不知道用什么代替某些东西来获取迭代器中的当前迭代索引。

<s:iterator value="images" status="incr">  
  <%= ((String)request.getAttribute("imageCaptionsString")).split(",")[something]%>
</s:iterator>

我知道不建议在 JSP 中使用 scriptlet 和表达式标记,但我不知道如何避免它。

最佳答案

当前迭代索引可通过 status 获得。 <s:iterator> 的属性标签。在你的情况下是 #incr.index .如果你想显示那个索引

<s:iterator value="images" status="incr"> 
  <s:property value="%{#incr.index}"/>

然后 scriplet 可以更改为 OGNL 表达式

<s:property value='#attr.imageCaptionsString.split(",")[%{#incr.index}]'/>

关于java - 在scriptlet数组索引中访问struts迭代器的索引值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19856296/

相关文章:

java - 使用编译和正则表达式获取字符串中的所有匹配项

javascript - 如何在JavaScript内联属性代码中引用/编写JSP变量?

mysql - 将数据库中的内容添加到struts2中的下拉列表中

java - 如何使用 Geb 控制单击项目?

java - 如何从 Java 锁定数据库记录?

java - 解析模板时出错 "welcome",模板可能不存在或无法由任何已配置的模板解析器访问

javascript - 使用 javascript 或 jquery 检测 struts2 自动完成器标记值的变化

java - 为什么 struts2 FilterDispatcher 被弃用?

java - Spring Boot 在 jar 签名后不读取组件

java - 如何为 HTML 字段分配值(例如带有 scriptlet 的 img src =""