在一个jsp页面实现二级下拉框联动,实时读取数据库数据,这个方法非常有用,只需要修改很小的地方就可以使用。设计的文件,serch.jsp,main.js,bytetostr.js,
先讲一下main.js,这是javascript,其中注意修改jsp页面名称。
以下为引用的内容: 其次为bytetostr.js,这是vbscript,这个不需要修改任何内容,他的主要功能就是读取数据转换字符串用的。
Function bytes2BSTR(vIn) |
接下来就是serch.jsp页面,只需要修改div中的id为你想要的名字,再将一开始的包更换一下,已经sql语句改下就可以了,有不明白的可以参与讨论
以下为引用的内容: } 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>
|
欢迎大家讨论