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

小瓶起

小瓶起

2016-02-19 19:28

今天图老师小编给大家介绍下在一个jsp页面实现二级下拉框联动实时读取数据库数据,平时喜欢在一个jsp页面实现二级下拉框联动实时读取数据库数据的朋友赶紧收藏起来吧!记得点赞哦~

  在一个jsp页面实现二级下拉框联动,实时读取数据库数据,这个方法非常使用,只需要修改很小的地方就可以使用。设计的文件,serch.jsp,main.js,bytetostr.js,

  先讲一下main.js,这是javascript,其中注意修改jsp页面名称。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)

   

   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语句改下就可以了,有不明白的可以参与讨论

   

  %@ page contentType="text/html; charset=gb2312" language="java" import="com.sjth.zdsygl.vo.*,com.sjth.zdsygl.biz.*,java.util.*,com.sjth.zdsygl.jdbc.*,java.sql.ResultSet"%//导入相应的包
  %
  //这部分代码用于执行查询数据库,返回字符串
    if (request.getParameter("findObject")!=null)...{
      if (request.getParameter("findObject").equals("hy_dm"))...{
        DBConnect conn = null;
        ResultSet rs = null;
        try...{                   
          out.print("select name='hy_dm' onchange="javascript:findObject('hymx_dm',this.value)"");
          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("option value='"+rs.getString("hy_dm")+"'"+rs.getString("hy_mc")+"/option");
          }    
          out.print("/select");
       }
       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("select name='hymx_dm' ");
          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("option value='"+rs.getString("hy_dm")+"'"+rs.getString("hy_mc")+"/option");
          }    
          out.print("/select");
       }
       catch (Exception e)...{                   
       }
       finally...{
            try...{
              if (rs != null)
                  rs.close();
              if (conn != null)
                  conn.close();
            }
            catch (Exception e)...{
              e.printStackTrace();
            }
       }
     }
     return;
   }
  %
  html
  head
      link href="css/table.css" type="text/css" rel="stylesheet"
      script language=vbscript src="css/bytetostr.js"/script
      script language=javascript src="css/main.js"/script//导入两个js文件
  /head
  body
        div所属行业:/div
        div id="hy_dm"/div //用来显示返回的字符串
        div 所属明细行业:/div
        div id="hymx_dm"/div//用来显示返回的字符串
  /body
  /html
  script language="javascript"
         findObject("hy_dm","");
         findObject("hymx_dm","");//这两条是页面执行是调用
  /script
   

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)

  欢迎大家讨论

   
  

展开更多 50%)
分享

猜你喜欢

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

Web开发
在一个jsp页面实现二级下拉框联动实时读取数据库数据

三级下拉框连动的数据库版

ASP
三级下拉框连动的数据库版

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Ajax联动下拉框的实现例子

Web开发
Ajax联动下拉框的实现例子

下拉框连动的小例子(数据库版)

ASP
下拉框连动的小例子(数据库版)

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Ajax实现无刷新三联动下拉框

Web开发
Ajax实现无刷新三联动下拉框

如何用Jsp读取Mysql数据库

Java JAVA基础
如何用Jsp读取Mysql数据库

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

VisualBasic代码优化的六条军规

VisualBasic代码优化的六条军规

jsp 内嵌网页内容--iframe

jsp 内嵌网页内容--iframe
下拉加载更多内容 ↓