struts2 在迭代器标签中包含测试
这是我在 jsp 中的代码:
<s:iterator value="sources" status="sourceStatus">
<s:property value="sourcesCheck"/>
<s:property value="#sourceStatus.index"/>
<s:if test="%{sourcesCheck.contains(#sourceStatus.index)}">
true
</s:if>
<s:else>
false
</s:else>
</s:iterator>
sourcesCheck 是我从操作传递的数组,填充了值 0,1,2,3,4,5。我的jsp 上的结果显示sourcesCheck 为0,1,2,3,4,5,但是,测试总是错误的。为什么?我尝试过使用 int 和 String 值来进行sourceCheck。包含如何工作?如果索引不是 String 或 int,那么它是什么?
This is my code in jsp:
<s:iterator value="sources" status="sourceStatus">
<s:property value="sourcesCheck"/>
<s:property value="#sourceStatus.index"/>
<s:if test="%{sourcesCheck.contains(#sourceStatus.index)}">
true
</s:if>
<s:else>
false
</s:else>
</s:iterator>
sourcesCheck is an array I pass from my action populated with values 0,1,2,3,4,5. The results on my jsp show 0,1,2,3,4,5 for sourcesCheck, however, the test is always false. Why? I have tried with both int and String values for sourcesCheck. How does contains work? If index is not a String or int, what is it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
使用此代码:
Use this code:
数组没有任何方法可以实现。考虑
java.util.List
。例如:
通过
java.util.List.contains(Integer)
Array doesn't have any methods to implement. Consider the
java.util.List
.For example :
Compare by
java.util.List.contains(Integer)
我认为它必须如下,
因为你想检查一个值而不是变量。
I think it must be as follow
because you want to check a value not a variable.