本文实例讲述了JSP实现用于自动生成表单标签html代码的自定义表单标签。分享给大家供大家参考。具体如下:
这个是自己写的一个简单的JSP表单标签,用于自动生成checkbox,select,radio等标签,传入菜单集合生成html代码,自动选中指定值,用于java web项目的jsp页面。
1. 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);
2. 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"/>
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>
希望本文所述对大家的JSP程序设计有所帮助。