CNET中国旗舰网站

ZDNet China | CNET科技资讯网 | 政府采购 | 行业网站联盟





 
标题: [转贴] 倾家荡产求一问题。我的2级动态加载下拉框
mz89757053
版主
Rank: 7Rank: 7Rank: 7


UID 304999
精华 0
积分 6933
帖子 8295
威望 116
ZD币 1002 元
阅读权限 250
注册 2008-3-10
状态 离线
  楼主
发表于 2008-3-18 14:00  资料  个人空间  短消息  加为好友 
开发者在线

倾家荡产求一问题。我的2级动态加载下拉框

reginfo.jsp:   
  <%@   page   cerrorPage="../error.jsp"     %>   
  <%@   page   import="com.r3321.page.Show"%>   
  <%@   page   import="com.r3321.db.Condb"%>   
  <%@   page   import="java.sql.*"%>   
  <html>   
  <head>   
  <meta   http-equiv="Content-Type"   c>   
  <meta   http-equiv="Page-Enter"   c>   
  <meta   http-equiv="Page-Exit"   c>     
  <title>添加病人信息</title>   
  <link   href="../css/default.css"   rel="stylesheet"   type="text/css">   
  </head>   
  <body>   
  <script   language="JavaScript">   
  <!--   
  function   RgTest()   
  {   
        if(document.form.Patient_id.value=="")   
            {   
        window.alert("请输入完整的信息!");   
        document.form.Patient_id.focus();   
        return   false;   
  }   
  if(document.form.Room_id.value=="")   
            {   
        window.alert("请输入完整的信息!");   
        document.form.Room_id.focus();   
        return   false;   
  }   
  if(document.form.Cw_id.value=="")   
            {   
        window.alert("请输入完整的信息!");   
        document.form.Cw_id.focus();   
        return   false;   
  }   
  return   true;   
  }   
  function   pop(){   
  window.open("page.jsp?sub="   +   document.form.Room_id.value,"newwindow",       "height=100,       width=366,       toolbar=no,       menubar=no,       scrollbars=no,       resizable=no,       location=no,       status=no")   
  }   
   
   
  var   XMLHttpReq;   
    //创建XMLHttpRequest对象                 
          function   createXMLHttpRequest()   {   
  if(window.XMLHttpRequest)   {   //Mozilla   浏览器   
  XMLHttpReq   =   new   XMLHttpRequest();   
  }   
  else   if   (window.ActiveXObject)   {   //   IE浏览器   
  try   {   
  XMLHttpReq   =   new   ActiveXObject("Msxml2.XMLHTTP");   
  }   catch   (e)   {   
  try   {   
  XMLHttpReq   =   new   ActiveXObject("Microsoft.XMLHTTP");   
  }   catch   (e)   {}   
  }   
  }   
  }   
  //发送请求函数   
  function   sendRequest(url)   {   
  createXMLHttpRequest();   
  XMLHttpReq.open("GET",   url,   true);   
  XMLHttpReq.onreadystatechange   =   processResponse;//指定响应函数   
  XMLHttpReq.send(null);     //   发送请求   
  }   
  //   处理返回信息函数   
          function   processResponse()   {   
          if   (XMLHttpReq.readyState   ==   4)   {   //   判断对象状态   
                  if   (XMLHttpReq.status   ==   200)   {   //   信息已经成功返回,开始处理信息   
                          updateList();   
                          }   else   {   //页面不正常   
                                  window.alert("您所请求的页面有异常。");   
                          }   
                  }   
          }   
  //   刷新列表框的函数   
  function   refreshList()   {   
          var   Room_id   =   document.getElementById("Room_id").value;   
          if(Room_id==   ""   )   {   
                  clearList();   
                  return;   
          }   
          var   url   =   "reginfo.jsp?Room_id="   +   Room_id;                  
  sendRequest(url)   
  }   
    //更新列表项函数   
  function   updateList()   {   
          clearList();   
          var   Cw_id   =   document.getElementById("Cw_id");//返回文档中具有指定ID属性的element结点   
          var   results   =   XMLHttpReq.responseXML.getElementsByTagName("k");   //返回一个NODE数组,包含具有指定标记名的所有element接点的子孙接点,其顺序为在稳当中出现的顺序   
          var   option   =   null;   
   
          for(var   i   =   0;   i   <   results.length;   i++)   {   
                  option   =   document.createElement("option");   
                  option.appendChild(document.createTextNode(results.firstChild.nodeValue));   
                  Cw_id.appendChild(option);   
          }   
  }   
    //清除列表框中原有选项的函数   
  function   clearList()   {   
          var   Cw_id   =   document.getElementById("Cw_id");   
          while(Cw_id.childNodes.length   >   0)   {   
                  Cw_id.removeChild(Cw_id.childNodes[0]);   
          }   
  }   
  //-->   
  </script>   
   
  <table   width="502"   height="393"   border="0"   align="center"   cellpadding="0"   cellspacing="0"   background="..\images\table1.jpg">   
      <form   name="form"   method="post"   action="reginfodo.jsp">   
        
      
      <tr>   
              <td   width="200"   height="36"   align="center"> </td>   
          <td   width="302">   
              </td>   
      </tr>   
      <tr>   
              <td   width="200"   height="36"   align="center"></td>   
          <td   width="302">   
              </td>   
      </tr>   
      <tr>   
              <td   width="200"   height="26"   align="right">住院号:</td>   
          <td   width="302">   
              <input   type="text"   name="Patient_id"></td>   
      </tr>   
      <tr>   
              <td   width="200"   height="26"   align="right">病房号:</td>   
          <td   width="302">   
              <select   name="Room_id"   id="Room_id"   >   
      <option   value="default">请选择</option>   
                          <%   
      Condb   con=new   Condb();   
          ResultSet   rs=con.executeQuery("select   *   from   room");   
  while(rs.next())   
  {   
      %>   
                          <option   value="<%=rs.getString(1)%>"><%=rs.getString(1)%></option>   
                          <%   }   
      con.close();   
      %>   
                      </select></td>   
      </tr>   
        <tr>   
              <td   width="200"   height="26"   align="right">病床号:</td>   
          <td   width="302">   
  <select   id="Cw_id"   >   
          </select>   
          </td>   
      </tr>   
      <tr   align="center">   
              <td   height="18"   colspan="2"><input   type="submit"   name="Submit"   value="执行"   >   
                       
                  <input   type="reset"   name="Reset"   value="重置">   
      </td>   
      </tr>   
  </form>   
  <tr>   
          <td     height="19"   colspan="2"   align="center">   <a   href="#"   ><font   color="#FF0000"   size="2">检查该病房入住情况</font></a></td>   
      </tr>   
      <tr>   
          <td     height="119"   colspan="2"></td>   
      </tr>   
  </table>   
   
  </body>   
  </html>   
  ----------------   
  DyListAction.java:   
  package   com.r3321.list;   
   
  import   java.io.IOException;   
  import   java.io.PrintWriter;   
  import   java.sql.ResultSet;   
  import   java.sql.SQLException;   
  import   javax.servlet.ServletConfig;   
  import   javax.servlet.ServletException;   
  import   javax.servlet.http.HttpServlet;   
  import   javax.servlet.http.HttpServletRequest;   
  import   javax.servlet.http.HttpServletResponse;   
  import   com.r3321.db.Condb;   
   
  public   class   DyListAction   extends   HttpServlet   {   
   
                  public   void   init(ServletConfig   config)   throws   ServletException   {   
          }   
   
          /*   
            *     处理<GET>   请求方法.   
            */   
          protected   void   doGet(HttpServletRequest   request,   HttpServletResponse   response)   
          throws   ServletException,   IOException   {   
                  //设置接收信息的字符集   
                  request.setCharacterEncoding("UTF-8");   
                  //接收浏览器端提交的信息   
                                  String   Room_id   =   request.getParameter("Room_id");   
                                  //设置输出信息的格式及字符集                  
                  response.setContentType("text/xml;   charset=UTF-8");   
                  response.setHeader("Cache-Control",   "no-cache");   
                  //创建输出流对象   
                  PrintWriter   out   =   response.getWriter();   
                  //依据验证结果输出不同的数据信息   
                  out.println("<response>");   
   
                  //数据库操作   
                  Condb   con   =   new   Condb();   
                                  ResultSet   rs;   
                  String   strSql=null;   
                  //查找该病房的床位数   
                  strSql   =   "select   Cw_count   from   room   where   Room_id='"+Room_id+   "'";   
                                  rs   =   con.executeQuery(strSql);   
                                  try   {   
                                                  while   (rs.next())   {   
                                                          int   count=rs.getInt(1);   
                                                          for(int   k=1;k<=count;k++)   
                                                                  out.println("<k>"   +   k   +   "</k>");   
                                                  }   
                                  }   catch   (SQLException   e)   {   
                                                  e.printStackTrace();   
                                  }   
   
                                  out.println("</response>");   
                                  out.close();   
          }   
  }   
   
  -----------   
  web.xml:   
  <?xml   version="1.0"   encoding="UTF-8"?>   
  <web-app   version="2.4"     
  xmlns="http://java.sun.com/xml/ns/j2ee"     
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee     
  http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">   
   
          <servlet>   
                  <servlet-name>ms1</servlet-name>   
                  <servlet-class>com.r3321.list.DyListAction</servlet-class>   
          </servlet>   
   
        <servlet-mapping>   
                  <servlet-name>ms1</servlet-name>   
                  <url-pattern>/reginfo</url-pattern>   
          </servlet-mapping>   
   
            
  <!--   The   Welcome   File   List   -->   
      <welcome-file-list>   
          <welcome-file>admin/reginfo.jsp</welcome-file>   
      </welcome-file-list>   
  </web-app>   
  --------------------   
  我主要是实现在第一个下拉框中选择房间号后,第2个下拉框把房间的床位号显示出来,没有显示代码错误,但是也不能体现出想要的功能。大家帮帮忙看看呀




顶部
热点频道推荐: C/S开发| 数据库| WEB开发| 嵌入式| 项目管理|
mz89757053
版主
Rank: 7Rank: 7Rank: 7


UID 304999
精华 0
积分 6933
帖子 8295
威望 116
ZD币 1002 元
阅读权限 250
注册 2008-3-10
状态 离线
  沙发
发表于 2008-3-18 14:01  资料  个人空间  短消息  加为好友 
我也刚学!我是照网上的例子做的,他是用xml来解析的.由于我的编码格式是GBK,所以到现在乱码问题还没解决.




顶部
热点频道推荐: C/S开发| 数据库| WEB开发| 嵌入式| 项目管理|
 



当前时区 GMT+8, 现在时间是 2009-7-5 08:45

  Powered by Discuz! 5.5.0 © 2001-2007 Comsenz Inc.
Processed in 0.076016 second(s), 3/3 queries

清除 Cookies - 联系我们 - ZDNetChina中文社区 - 无图版