【发布时间】:2019-03-28 07:17:15
【问题描述】:
我有一个会话变量(它是一个 map,在 JSP 中具有 Map<String,ArrayList<String>>) 的结构。
当我在控制台中打印值时
<%System.out.println("Session Value "+session.getAttribute("PRODUCTTYPESTEMP"));%> 它正在控制台中打印整个值。
我想要的只是通过传递所需的key 来获取ArrayList 的值,并用check box 打印它。
我不知道该怎么做。
顺便说一句,我不熟悉 struts 或 JSP。
非常感谢任何帮助。
作为参考,下面是现有的一段代码(请忽略,如果它令人困惑,请提供一种实现上述功能的方法) - 如果 session 返回 ArrayList 这将起作用,我正在尝试通过传递所需的key 为map 重写它。
<input type="checkbox" id="warrantsCb2"/><span></span></label><label for="warrantsCb" style="font-size:12px"><b>Warrants</b></label>
<ul class="nested">
<li>
<label><input type="checkbox" /><span></span></label>Warrants
</li>
<% colCntr=0; %>
<s:iterator var="product_types" value="#session['PRODUCTTYPESTEMP']">
<li>
<label>
<input type="checkbox" id="productTypeCodesTemp" name="productTypeCodesTemp" value="<s:property value="#product_types_temp.value"/>"
<s:iterator var="productTypeTemp" value="#attr['productTypeCodesTemp']">
<s:if test="%{#attr['productType']==#product_types.value}"> checked="checked" </s:if>
</s:iterator>/>
<span></span></label>
<s:property value="#product_types.label"/>
</li>
</s:iterator>
</ul>
编辑 - 在 Madis R 的帮助下添加了新代码
<li class="caret">
<input type="checkbox" id="warrantsCb" checked="checked" /><label>
<input type="checkbox" id="warrantsCb2"/><span></span></label><label for="warrantsCb" style="font-size:12px"><b>Warrants</b></label>
<s:iterator value="#session['PRODUCTTYPESTEMP']">
<s:property value="Baskets"/>
<s:checkboxlist name="checkboxes" list="value"/>
</s:iterator>
</li>
上面是打印带有复选框的所有值。
我只需要选择与key“篮子”关联的ArrayList 值
编辑: 实施最新解决方案后,正在获取值,但复选框不可用。我应该在屏幕截图和代码中将 Warrant 与 'Unknown' 对齐
<td style="text-align:left;vertical-align:top;padding:0">
<div class="acidjs-css3-treeview">
<ul>
<li class="caret">
<input type="checkbox" id="warrantsCb" checked="checked" /><label>
<input type="checkbox" id="warrantsCb2"/><span></span></label><label for="warrantsCb" style="font-size:12px"><b>Warrants</b></label>
<s:checkboxlist name="checkboxes" list="#session['PRODUCTTYPESTEMP']['Baskets']"/>
</li>
</ul>
</div>
</td>
【问题讨论】: