打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
spring mvc中下拉框的复习
       spring mvc中下拉框,其实是很简单的了,但简单的东西还是应该多复习,这次来复习下.


1)controller:

  
Java代码  
  1. @RequestMapping(value="/phone-page")  
  2.     private ModelAndView selectTag() {  
  3.         ModelAndView mav = new ModelAndView("phone-form");  
  4.           
  5.         Map<String, String> phones = new HashMap<String, String>();  
  6.         phones.put("samsung", "SAMSUNG");  
  7.         phones.put("nokia", "NOKIA");  
  8.         phones.put("iphone", "IPHONE");  
  9.           
  10.         mav.addObject("phonesMap", phones);  
  11.         mav.addObject("smartphone", new Smartphone());  
  12.           
  13.         return mav;  
  14.     }  


    这里其实用HashMap去装载下拉列表,然后放到modelandview中去,然后前端的页面jsp

Java代码  
  1. Select phone:  
  2. <form:form method="POST" commandName="smartphone" action="phone-result.html">  
  3. <table>  
  4.     <tr>  
  5.     <td>  
  6.         [list]  
  7.             <form:select path="phone" items="${phonesMap}"/>  
  8.         [/list]  
  9.     </td>  
  10.     </tr>  
  11.     <tr>  
  12.         <td>  
  13.             <input type="submit" value="Submit"/>  
  14.         </td>  
  15.     </tr>  
  16. </table>    
  17. </form:form>  


    这里的submit演示了选择某个选项后,提交到phone-result这个方法控制器中,
控制器中的方法代码为:

  
Java代码  
  1. @RequestMapping(value="/phone-result")  
  2.     private ModelAndView processPhone(@ModelAttribute Smartphone smartphone) {  
  3.         ModelAndView mav = new ModelAndView("phone-result");  
  4.         mav.addObject("smartphone", smartphone);          
  5.         return mav;  
  6.     }  

   可以看到<form:form method="POST" commandName="smartphone" action="phone-result.html">,而接受的参数中,用@ModelAttribute Smartphone smartphone接收住了.


2) 第2种方法是在JSP页面中硬编码下拉选项,如:
  
Java代码  
  1. <form:form method="POST" commandname="smartphone" action="phone-result.html">  
  2. <table>  
  3.     <tbody><tr>  
  4.     <td>  
  5.         [list]  
  6.             <form:select path="phone">  
  7.                 <form:option value="samsung">SAMSUNG</form:option>  
  8.                 <form:option value="nokia">NOKIA</form:option>  
  9.                 <form:option selected="selected" value="htc">HTC</form:option>  
  10.                 <form:option value="iphone">IPHONE</form:option>  
  11.             </form:select>  
  12.         [/list]  
  13.     </td>  
  14.     </tr>  
  15.     <tr>  
  16.         <td>  
  17.             <input value="Submit" type="submit">  
  18.         </td>  
  19.     </tr>  
  20. </tbody></table>    
  21. </form:form>  

  
   当然呈现这个jsp的控制层为:
 
Java代码  
  1. @RequestMapping(value="/phone-option-page")  
  2.     private ModelAndView optionTag() {        
  3.         return new ModelAndView("phone-option-form", "smartphone", new Smartphone());  
  4.     }  



3 最后一个看<form:options>的用法

控制器方法:
  
Java代码  
  1. @RequestMapping(value="/phone-options-page")  
  2.     private ModelAndView optionsTag() {  
  3.         ModelAndView mav = new ModelAndView("phone-options-form");  
  4.   
  5.         Map< String, String > phones = new HashMap();  
  6.         phones.put("samsung", "SAMSUNG");  
  7.         phones.put("nokia", "NOKIA");  
  8.         phones.put("iphone", "IPHONE");  
  9.         phones.put("bberry", "BLACKBERRY");  
  10.         phones.put("htc", "HTC");  
  11.   
  12.         mav.addObject("phonesMap", phones);  
  13.         mav.addObject("smartphone", new Smartphone());  
  14.   
  15.         return mav;  
  16.     }  


  注意页面JSP为:
 
Java代码  
  1. Select phone:  
  2. <form:form method="POST" commandname="smartphone" action="phone-result.html">  
  3. <table>  
  4.     <tbody><tr>  
  5.     <td>  
  6.         [list]  
  7.             <form:select path="phone">  
  8.                 <form:option value="-" label="--Select phone">  
  9.                 <form:options items="${phonesMap}">  
  10.             </form:options></form:option></form:select>  
  11.         [/list]  
  12.     </td>  
  13.     </tr>  
  14.     <tr>  
  15.         <td>  
  16.             <input value="Submit" type="submit">  
  17.         </td>  
  18.     </tr>  
  19. </tbody></table>    
  20. </form:form>  
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
【应用篇】Activiti外置表单实例demo(四)
springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序
springmvc的ModelAndView的简单使用
spring boot中统一异常处理
SpingMVC常用注解之@RequestParam
手机主宰了你的生活,这不是乔布斯想看到的 | 观点
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服