111111
精灵王
精灵王
  • 注册日期2010-12-08
  • 发帖数640
  • QQ
  • 火币1103枚
  • 粉丝120
  • 关注75
  • 社区明星
阅读:2637回复:0

在一个jsp页面实现二级下拉框联动,实时读取数据库数据 _jsp技巧

楼主#
更多 发布于:2011-01-26 21:54
在一个jsp页面实现二级下拉框联动,实时读取数据库数据,这个方法非常使用,只需要修改非常小的地方就能使用。设计的文件,serch.jsp,main.js,bytetostr.js,先讲一下main.js,这是javascript,其中注意修改jsp页面名称。 function findObject(fName,initValue)...{
   var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
   xmlhttp.open("POST","searchmx.jsp?findObject="+fName+";initValue="+initValue,false);//注意修改jsp页面
   xmlhttp.send();
   document.getElementById(fName).innerHTML=bytes2BSTR(xmlhttp.responsebody); //bytes2BSTR函数在bytetostr.js中
 }
其次为bytetostr.js,这是vbscript,这个不必修改所有内容,他的主要功能就是读取数据转换字符串用的。 Function bytes2BSTR(vIn)
  dim i
  strReturn = ""
  For i = 1 To LenB(vIn)
  ThisCharCode = AscB(MidB(vIn,i,1))
  If ThisCharCode < ;H80 Then
  strReturn = strReturn ; Chr(ThisCharCode)
  Else
  NextCharCode = AscB(MidB(vIn,i+1,1))
  strReturn = strReturn ; Chr(CLng(ThisCharCode) * ;H100 + CInt(NextCharCode))
  i = i + 1
  End If
  Next
  bytes2BSTR = strReturn
End Function
 
接下来就是serch.jsp页面,只需要修改div中的id为你想要的名字,再将一开始的包更换一下,已sql语句改下就能了,有不明白的能参和讨论 //导入相应的包
");
        String sql = "select * from dm_hy group by left(hy_dm,7)";
        conn = new DBConnect();
        conn.setPstmt(sql);
        rs = conn.executeQuery(sql);
        while(rs.next())...{
          out.print(""+rs.getString("hy_mc")+"");
        }    
        out.print("");
     }
     catch (Exception e)...{                    
     }
     finally...{
          try...{
            if (rs != null)
                rs.close();
            if (conn != null)
                conn.close();
          }
          catch (Exception e)...{
            e.printStackTrace();
          }
     }
   }
    if (request.getParameter("findObject").equals("hymx_dm"))...{
      DBConnect conn = null;
      ResultSet rs = null;
      try...{                    
        out.print("");
        String sql = null;
        if (request.getParameter("initValue").equals(""))...{
          sql = "select * from dm_hy";
        }
        else...{
          sql = "select * from dm_hy where hy_dm like "+request.getParameter("initValue")+"%";
        }
        conn = new DBConnect();
        conn.setPstmt(sql);
        rs = conn.executeQuery(sql);
        while(rs.next())...{
          out.print(""+rs.getString("hy_mc")+"");
        }    
        out.print("");
     }
     catch (Exception e)...{                    
     }
     finally...{
          try...{
            if (rs != null)
                rs.close();
            if (conn != null)
                conn.close();
          }
          catch (Exception e)...{
            e.printStackTrace();
          }
     }
   }
   return;
 }
%>


    
    
    //导入两个js文件


      所属行业:
      
//用来显示返回的字符串
      
所属明细行业:
      
//用来显示返回的字符串





喜欢0 评分0
游客

返回顶部