本文實例講述了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程序設計有所幫助。