这个是自己写的一个简单的JSP表单标签,用于自动生成checkbox,select,radio等标签,传入菜单集合生成html代码,自动选中指定值,用于java web项目的jsp页面。
Servlet部分代码
代码如下:
Map<String, String> map = new HashMap<String, String>();
map.put("2", "选项二");
map.put("3", "选项三");
map.put("4", "选项四");
map.put("5", "选项五");
map.put("6", "选项六");
req.setAttribute("map", map);
List<String> list = new ArrayList<String>();
list.add("4");
list.add("5");
list.add("6");
req.setAttribute("list", list);
JSP代码
代码如下:
<%@taglib prefix="g" uri="http://www.golpesoft.com" %>
<g:select value="1">
<option value="0">选项一</option>
<g:option value="1">这个被选中</g:option>
<!-- items必需是集合或者map -->
<g:options items="${map }"/>
</g:select>
<!--checkValue支持el,可以是集合或者字符串,指定自动生成的checkbox哪些被选中 -->
<g:checkboxs checkValue="${list }" items="${map }" name="checkbox"/>
<!-- checkValue只能是字符串,支持el -->
<g:radios items="${map }" name="radio" checkValue="3"/>
生成的html代码
代码如下:
<select>
<option value="0">选项一</option>
<option value="1" selected="selected">这个被选中</option>
<!-- items必需是集合或者map -->
<option value="3">选项三</option>
<option value="2">选项二</option>
<option value="6">选项六</option>
<option value="5">选项五</option>
<option value="4">选项四</option>
</select>
<!--checkValue支持el,可以是集合或者字符串,指定自动生成的checkbox哪些被选中 -->
<div class="checkbox-div"><input type="checkbox" id="checkbox1" name="checkbox" value="3" /><label for="checkbox1">选项三</label></div><div class="checkbox-div"><input type="checkbox" id="checkbox2" name="checkbox" value="2" /><label for="checkbox2">选项二</label></div><div class="checkbox-div"><input type="checkbox" id="checkbox3" name="checkbox" value="6" checked="checked" /><label for="checkbox3">选项六</label></div><div class="checkbox-div"><input type="checkbox" id="checkbox4" name="checkbox" value="5" checked="checked" /><label for="checkbox4">选项五</label></div><div class="checkbox-div"><input type="checkbox" id="checkbox5" name="checkbox" value="4" checked="checked" /><label for="checkbox5">选项四</label></div>
<!-- checkValue只能是字符串,支持el -->
<div class="radio-div"><input type="radio" id="radio1" name="radio" value="3" checked="checked" /><label for="radio1">选项三</label></div><div class="radio-div"><input type="radio" id="radio2" name="radio" value="2" /><label for="radio2">选项二</label></div><div class="radio-div"><input type="radio" id="radio3" name="radio" value="6" /><label for="radio3">选项六</label></div><div class="radio-div"><input type="radio" id="radio4" name="radio" value="5" /><label for="radio4">选项五</label></div><div class="radio-div"><input type="radio" id="radio5" name="radio" value="4" /><label for="radio5">选项四</label></div>
更多信息请查看IT技术专栏