文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>JSP页面中使用JavaScript调用JSP中的resultset

JSP页面中使用JavaScript调用JSP中的resultset

时间:2010-04-07  来源:frostmourn716

偶遇一个需要在JSP页面中通过Javascript来处理访问数据库得到的Resultset,由于<%...%>中不能直接使用JavaScript语句,如何传递ResultSet着实让人头疼了一番,在网上搜寻的结果多数为生成一个数组然后接收ResultSet中的记录,可是这样非常麻烦,不符合简单即美好的原则,通过实验,发现可以在<script language="JavaScript"></scritp>标签中嵌入<% out.println("需要的Javascript语句")%>方式来解决,其原理是输出的javascript代码能够通过eval()函数执行,非常方便,示例代码如下

 13 <%
 14 Connection conn = null;
 15 ResultSet rs = null;
 16 String server = "......";
 17 String port = "....";
 18 String db ="....";
 19 String user = "....";
 20 String pass = ".....";
 21 String drivername="com.mysql.jdbc.Driver";
 22 String URL ,sqlcmd,institutionname;
 23 String str_IdP="";
 24
 25 //get database connection
 26 try{
 27 Class.forName(drivername).newInstance();
 28 URL="jdbc:mysql://"+server+":"+port+"/"+db+"?user="+user+"&password="+pass + "&useUnicode=true&charact erEncoding=utf8" ;
 29 conn = DriverManager.getConnection(URL);
 30
 31 Statement stmt = conn.createStatement();
 32 sqlcmd="select * from redapp;";
33 rs = stmt.executeQuery(sqlcmd);
 34 %>
 35 <script language="JavaScript">
 36 //处理不同浏览器下的兄弟节点访问的函数
 37 var getNextSibling = function(obj){
 38 if(obj.nextSibling.nodeType==3) {
 39 sibling=obj.nextSibling.nextSibling; // Moz. Opera
 40 }
 41 else {
 42 sibling=obj.nextSibling; // IE
 43 }
 44 return sibling;
 45 };
 46 //生成Javascript代码
 47 <%
 48 while(rs.next())
 49 {
 50 institutionname=rs.getString("institutionname");
 51 out.println("var td_node=document.getElementById(\""+institutionname+"\");");
 52 out.println("getNextSibling(td_node).innerHTML+=\"<a href=\\\""+rs.getString("url")+"\\\" target=_top>"+rs.getString("description")+"</a> \";");
 53 }
 54 %>
 55 </script>
 56 <%
 57 rs.close();
 58 rs = null;
 59
 60 conn.close();
 61 conn = null;
 62
 63 }catch(Exception e){
 64 e.printStackTrace();
 65 }
 66 %>


相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载