首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

[转]dwr级联上拉列表

2012-11-06 
[转]dwr级联下拉列表访问数据库的部分: /** 获取所有大类的类别列表*/ public static Map getAccessoriesB

[转]dwr级联下拉列表
访问数据库的部分:

/*  * 获取所有大类的类别列表  */ public static Map getAccessoriesBigTypeInfoMap(){    Map map = new HashMap();  List list = new ArrayList();  Session session = SessionFactory.currentSession();  Transaction tx = session.beginTransaction();    try {      list = session.createQuery("from AccessoriesTypeInfo where UPID is null or UPID = 0").list();   for(int i=0;i<list.size();i++){                  //---------这里只能采用这种形式,呵呵,为什么??请去看DWR的文档吧    map.put(((AccessoriesTypeInfo)list.get(i)).getId(),((AccessoriesTypeInfo)list.get(i)).getTypename());   }   tx.commit();  } catch (Exception e) {   log.error("AccessoriesTypeInfoDAO.getAccessoriesBigTypeInfoList() failed!!!"+e.getMessage());   if(tx != null) tx.rollback();  }finally{   if(session != null) session.close();  }  return map; }/*  * 获取指定大类下的小类类别列表  *String upid:大类ID  */public static Map getAccessoriesSmallTypeInfoMap(String upid){    Map map = new HashMap();  List list = new ArrayList();  Session session = SessionFactory.currentSession();  Transaction tx = session.beginTransaction();    try {      int id = Integer.parseInt(upid);   list = session.createSQLQuery("select {t.*} from AccessoriesTypeInfo t where t.UPID = ?").addEntity("t",AccessoriesTypeInfo.class).setInteger(0,id).list();   for(int i=0;i<list.size();i++){    map.put(((AccessoriesTypeInfo)list.get(i)).getId(),((AccessoriesTypeInfo)list.get(i)).getTypename());   }   tx.commit();  } catch (Exception e) {   log.error("AccessoriesTypeInfoDAO.getAccessoriesBigTypeInfoList() failed!!!"+e.getMessage());   if(tx != null) tx.rollback();  }finally{   if(session != null) session.close();  }  return map; }


信息显示页:

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %><%@ page import="java.util.List"%> <script type='text/javascript' src='/qcbst/dwr/interface/JDate.js'></script> <script type='text/javascript' src='/qcbst/dwr/engine.js'></script> <script type='text/javascript' src='/qcbst/dwr/util.js'></script> <script type='text/javascript' src='/qcbst/dwr/interface/AccessoriesType.js'></script><script type="text/javascript" src="../../js/clearspace.js"></script><script language="javascript">  function selectAorigin(o){       var big = document.getElementById("bigcategories");   var small = document.getElementById("smallcategories");   big.length=1;   small.length=1;      big.options[0].selected=true;   small.options[0].selected=true;   if(o == "0"){    DWRUtil.removeAllOptions("bigcategories");   //----------移除下拉列表中的内容  DWRUtil.removeAllOptions("smallcategories");  DWRUtil.addOptions("bigcategories",{0:'选择大类'});//----------设置一个初始化的下拉列表内容  DWRUtil.addOptions("smallcategories",{0:'选择小类'});     big.length=1;    small.length=1;       big.options[0].selected=true;    small.options[0].selected=true;   }else{               //-----------将AccessoriesType.getAccessoriesBigTypeInfoMap()取得的信息给getABigInfo()   AccessoriesType.getAccessoriesBigTypeInfoMap(getABigInfo);  } } function getABigInfo(d){    DWRUtil.addOptions("bigcategories",d); }   function selectAbigcategories(brand){    var small = document.getElementById("smallcategories");   small.length=1;    small.options[0].selected=true;  if(brand == "0"){    small.length=1;    small.options[0].selected=true;  }  AccessoriesType.getAccessoriesSmallTypeInfoMap(getASmallInfo,brand); } function getASmallInfo(d){   DWRUtil.addOptions("smallcategories",d); }  function clearAInfo(){  document.getElementById("accessoriesname").value=""; } </script><form id="form1" name="form1" method="post" action="/qcbst/v_viewaccessoriesinfosearch1" style="0 0 0 0" target="_top">                <table width="150" border="0" cellspacing="5" cellpadding="0">                  <tr>                    <td height="30" align="center"><span onChange="selectAorigin(this.value)">                        <option value="0" selected>选择区域</option>                        <option value="国产">国产</option>                        <OPTION value="进口">进口</OPTION>                      </select>                    </td>                  </tr>                  <tr>                    <td align="center"><select name="bigcategories" onChange="selectAbigcategories(this.value)">                        <option value="0" selected>选择大类</option>                                              </select>                    </td>                  </tr>                  <tr>                    <td align="center"><select name="smallcategories">                        <option value="0" selected>选择小类</option>                      </select>                    </td>                  </tr>                  <tr>                    <td align="center"><input name="accessoriesname" type="text" value="    配件名称" size="15" onFocus="clearAInfo()" /></td>                  </tr>                  <tr>                    <td align="center"><input type="submit" name="Submit" value="开始精确查找" /></td>                  </tr>                </table>            </form>


WEB-INF下的DWR.XML:

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" " http://www.getahead.ltd.uk/dwr/dwr10.dtd "> <dwr> <allow> <create creator="new" javascript="AccessoriesType"> <param name="class" value="com.lvke.web.qcbst.dao.automobile.AccessoriesTypeInfoDAO"/> </create> </allow> </dwr>

热点排行