听说CSDN上面有很多热心朋友,也有很多高手,第一次提问希望能解决我的难题先谢了!!
思路是这样的页面上有很多超联结,当onmouseover超联结的时候,显示隐藏层,层获取超联结上传过来的主键如id,层根据id查数据库中与之对应的值并显示出来!简单的说是有很多联结,鼠标放到不同联结上层就显示此联结对应后台数据库的值
很伤心…都怪自已太菜…非常感谢能帮助我的朋友
下面是我用dreamweaver做的层中aaaaaa就是鼠标放上去要显示的值,但这个值是静态的,我想要从数据库中获取。不知道我有没有表述清楚,请多批评
!<%@ page contentType="text/html; charset=big5" language="java" import="java.sql.*" errorPage="" %>
<%@ include file="../Connections/sckb.jsp" %>
<%
Driver DriverRecordset1 = (Driver)Class.forName(MM_sckb_DRIVER).newInstance();
Connection ConnRecordset1 = DriverManager.getConnection(MM_sckb_STRING,MM_sckb_USERNAME,MM_sckb_PASSWORD);
PreparedStatement StatementRecordset1 = ConnRecordset1.prepareStatement("SELECT idd1 FROM dbo.jilu WHERE idd<21");
ResultSet Recordset1 = StatementRecordset1.executeQuery();
boolean Recordset1_isEmpty = !Recordset1.next();
boolean Recordset1_hasData = !Recordset1_isEmpty;
Object Recordset1_data;
int Recordset1_numRows = 0;
%>
<%
int Repeat1__numRows = 10;
int Repeat1__index = 0;
Recordset1_numRows += Repeat1__numRows;
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=big5" />
<title>无标题文件</title>
<style type="text/css">
<!--
#Layer1 {
position:absolute;
width:200px;
height:115px;
z-index:1;
}
-->
</style>
<script type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
} function MM_showHideLayers() { //v6.0
var i,p,v,obj,args=MM_showHideLayers.arguments;
for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
obj.visibility=v; }
}
//-->
</script>
</head> <body>
<table width="124" border="1">
<tr>
<% while ((Recordset1_hasData)&&(Repeat1__numRows-- != 0)) { %>
<td onmouseover="MM_showHideLayers('Layer1','','show')" onmouseout="MM_showHideLayers('Layer1','','hide')"><%=(((Recordset1_data = Recordset1.getObject("idd1"))==null || Recordset1.wasNull())?"":Recordset1_data)%></td>
<%
Repeat1__index++;
Recordset1_hasData = Recordset1.next();
}
%>
</tr>
</table>
<div id="Layer1">aaaaaa</div>
</body>
</html>
<%
Recordset1.close();
StatementRecordset1.close();
ConnRecordset1.close();
%>在BAIDU知道问了,有朋友这样回答:
我这个还不简单?首先查询出需要的数据保存到记录集中,然后将aaaa用一段jsp语句代替,这个jsp语句将记录集中需要的数据写到这里。 也就是说,你在前面加一段查询数据库的代码,然后在每个层中用jsp将数据放进去就可以了。
但这不是我想要的啊
问题补充:不是一个超连接对应一个层哦!是所有的连接都调用一个层。最好是能附上代码。谢谢!
思路是这样的页面上有很多超联结,当onmouseover超联结的时候,显示隐藏层,层获取超联结上传过来的主键如id,层根据id查数据库中与之对应的值并显示出来!简单的说是有很多联结,鼠标放到不同联结上层就显示此联结对应后台数据库的值
很伤心…都怪自已太菜…非常感谢能帮助我的朋友
下面是我用dreamweaver做的层中aaaaaa就是鼠标放上去要显示的值,但这个值是静态的,我想要从数据库中获取。不知道我有没有表述清楚,请多批评
!<%@ page contentType="text/html; charset=big5" language="java" import="java.sql.*" errorPage="" %>
<%@ include file="../Connections/sckb.jsp" %>
<%
Driver DriverRecordset1 = (Driver)Class.forName(MM_sckb_DRIVER).newInstance();
Connection ConnRecordset1 = DriverManager.getConnection(MM_sckb_STRING,MM_sckb_USERNAME,MM_sckb_PASSWORD);
PreparedStatement StatementRecordset1 = ConnRecordset1.prepareStatement("SELECT idd1 FROM dbo.jilu WHERE idd<21");
ResultSet Recordset1 = StatementRecordset1.executeQuery();
boolean Recordset1_isEmpty = !Recordset1.next();
boolean Recordset1_hasData = !Recordset1_isEmpty;
Object Recordset1_data;
int Recordset1_numRows = 0;
%>
<%
int Repeat1__numRows = 10;
int Repeat1__index = 0;
Recordset1_numRows += Repeat1__numRows;
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=big5" />
<title>无标题文件</title>
<style type="text/css">
<!--
#Layer1 {
position:absolute;
width:200px;
height:115px;
z-index:1;
}
-->
</style>
<script type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
} function MM_showHideLayers() { //v6.0
var i,p,v,obj,args=MM_showHideLayers.arguments;
for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
obj.visibility=v; }
}
//-->
</script>
</head> <body>
<table width="124" border="1">
<tr>
<% while ((Recordset1_hasData)&&(Repeat1__numRows-- != 0)) { %>
<td onmouseover="MM_showHideLayers('Layer1','','show')" onmouseout="MM_showHideLayers('Layer1','','hide')"><%=(((Recordset1_data = Recordset1.getObject("idd1"))==null || Recordset1.wasNull())?"":Recordset1_data)%></td>
<%
Repeat1__index++;
Recordset1_hasData = Recordset1.next();
}
%>
</tr>
</table>
<div id="Layer1">aaaaaa</div>
</body>
</html>
<%
Recordset1.close();
StatementRecordset1.close();
ConnRecordset1.close();
%>在BAIDU知道问了,有朋友这样回答:
我这个还不简单?首先查询出需要的数据保存到记录集中,然后将aaaa用一段jsp语句代替,这个jsp语句将记录集中需要的数据写到这里。 也就是说,你在前面加一段查询数据库的代码,然后在每个层中用jsp将数据放进去就可以了。
但这不是我想要的啊
问题补充:不是一个超连接对应一个层哦!是所有的连接都调用一个层。最好是能附上代码。谢谢!
解决方案 »
- Flex 以图片作为画布,在上面画矩形框(类似于标记)
- java web中的一个问题,困扰我很久了
- 求jsp页面两个selectbox选择
- 【Hibernate框架影射表的问题】
- 请问有没有支持JSP的报表开发或者表格管理开源软件?
- ■■ 有关session的问题。。。急,谢谢(在线等)
- 高分求最新的linux下搭建mysql+tomcat+apache+php的教程
- 如何获得命令行输出
- 狂送100分,进入就送分,每月想赚3000者请进入,保证有赚$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
- 为什么"我的得分"忽高忽低???
- 求解决ssh整合出现的异常
- mysql 语法 的一些问题 请教大家 大家帮帮忙!!
首先你这个层Layer1里面既然是绑定数据库查询结果的,肯定是要在不刷新页面的情况下发送Ajax请求到后台向数据库请求信息,在Ajax的回调方法中通过Js让层出现,填充Ajax回复的数据库请求数据。没啥难度,不过就是要加一个Ajax而已!推荐你使用Dwr,是一个Ajax框架,做这种需求非常简单。
document.getElementById('Layer1').innerHTML="你从数据库中度的数据就可以了";
<td onmouseover="document.getElementById('Layer1').innerHTML=this.innerHTML">
2. 然后遍历 1 中获取到的 a 标签集合,通过 e.onmouseover = function() { /**/ }; 给每个连接加上 mouseover 事件处理代码
3. 在上面方法里作层的显隐操作。yourLayer.style.display = "block"; /*显示*/ yourLayer.style.display = "none"; /*隐藏*/
这只是静态的显示,楼主想动态的显示啊!
上面的方法除非是数据已经都传到了页面的div上,还设置yourLayer.style.display = "none"; /*隐藏*/,在根据上面的方法就可以了。我想这里用ajax应该更好!
那就在 function() {} 里加上 AJAX 动态获取信息的代码,再 yourLayer.innerHTML = ajaxResponseText; 不是 AJAX 更好,是要再加上 AJAX 的部分!
感觉自已太菜准备努力努力学习了