短篇故事:
我有一个字段如下List <Integer> engine = new ArrayList(); 当我在jsp中使用$ {engine}时,它以[x1,x2]格式显示其值,但我需要将其设为engine = x1,engine = x2才能建立链接。怎么做?另一个选择是使后端接受[x1,x2]格式的值。
很长的故事:
我有一个包含两个复选框的表单,用户正在根据一些项目(例如门数和发动机功率)来寻找汽车。提交表格后,将会显示所有数量符合搜索标准的汽车品牌。一旦用户点击任一品牌,就会显示所有匹配的汽车。
...
<s:checkboxlist name="engine" label="Engine" list="@com.car.interfaces.Lists@Engine"/>
<s:checkboxlist name="door" label="door" list="@com.car.interfaces.Lists@Door"/>
....
我使用以下两个代码来显示结果,但是两者的输出都采用这种格式[1000,2000]
<s:property value="%{engine}"/>
${engine}
显示结果时,将如下创建链接
<a href ="....?${engine}&${door}&....">View Cars</a>
which would change to following
<a href="....?engine=[1000,2000]
&door=[2,4,5]&.....">View Cars</a>
当我单击链接时,它找不到项目;但是,如果我将值的格式更改为1000,2000,则可以正常工作。
我知道,一种方法是使用外观浏览所有项目并以所需格式创建项目字符串,但是还有其他方法可以做到吗?
public static final Map Engine = new TreeMap() {
{
put(1000, "Small");
put(2000, "Good");
put(3000, "Standard");
put(4000, "Powerful");
put(5000, "Excellent");
}
;
};
使用Struts2标记从列表创建url参数。该<s:param>
标签将扩大列表中传递value
属性param_name=val1¶m_name=val2
格式。
<s:url>
<s:param name="engine" value="engine" />
<s:param name="door" value="door" />
</s:url>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句