Avatar billede peleiden Nybegynder
13. september 2003 - 10:41 Der er 4 kommentarer og
1 løsning

hente info fra db ned i en DOM array?

Hej
Jeg henter et recordsæt ned med asp fra en acces db, hvor jeg lægger alt info i en tabel, så hver række i tabellen bliver hver række fra databasen(m. asp). Alt dette funker fint.

når musen går over en <tr> i min tabel skal en bestemt <div> blive synlig..ellers er den usynlig. Indholdet af den div er en bestemt celle fra databasen ud fra den pågældende række.

Den skal altså generere alle de id'er som der er rækker i tabellen i javascriptet, lige nu funker det kun på en ad gangen alt efter hvad jeg sætter minne fhide() og fshow() funktioner. Hvordan får jeg javascriptet eller DOM'en til at finde ud af hvilken række i tabellen musen er henover og samtidigt gør den pågældende <div> synlig?

Min kode:

<% @Language=VBScript%>

<%
Dim Cn, strAction, rs, strSQL
%>
<%
Set Cn = Server.CreateObject("ADODB.Connection")
        Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.mapPath ("proces_komp_db.mdb")

       
        strAction = Request.QueryString("action")
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<title>Proces Linie</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<link rel="stylesheet" href="process_linie.css" type="text/css" media="screen" />

<script language="JavaScript">
<!--

   
   
onload = function() {

document.getElementById ( "rumbe" ).onmouseover = fShow;
document.getElementById ( "rumbe" ).onmouseout = fHide;

}

function fShow(){
    node = document.getElementById( "info" )
    node.style.visibility = "visible";
}
function fHide(){
    node = document.getElementById( "info" )
    node.style.visibility = "hidden";
}
//-->
</script>
</head>

<body>

<%

%>
</p>
<table class="komptable" width="500" border="1" cellpadding="0" cellspacing="0" bgcolor="#f2f2f2" id="komp">
  <tr>
    <td colspan="4" class="komptable_cell_top">Projekt processer</td>
  </tr>
  <div class="container">
<%
  Set rs = Server.CreateObject("ADODB.RecordSet")
    strSQL = "SELECT * FROM proces"
    rs.Open strSQL, Cn, 1, 3
 
  Do while NOT rs.EOF
%>

  <div id="info" class="mouseover_box">
      <div><% = rs("info") %></div>
  </div>
  <tr id="rumbe">
    <td width="49"><% = rs("navn") %></td>
    <td width="35" style="padding:3px;"><div align="right">Start</div></td>
    <td width="311" style="padding:3px;"><div class="linie_comtainer"><span class="linie" style="width:<% = round((rs("proces")*311)/100) %>px;"></span></div></td>
    <td width="95" style="padding:3px;">Slut</td>
  </tr>
<%
    rs.MoveNext
Loop
%>
</div>
<%
rs.Close
            Cn.Close
            Set rs = Nothing
            Set Cn = Nothing
  %>
 
 
</table>
</body>
</html>
Avatar billede medions Nybegynder
13. september 2003 - 10:46 #1
Du kan tage inspiration her: www.medions.dk/bransholm

//>Rune
Avatar billede roenving Novice
13. september 2003 - 11:38 #2
Du tæller dine records og bruger det som en del af id'en både til div'en og tr'en !-)

Samtidig skal du så ændre lidt i dine funktioner:

Sæt onmouseover/out direkte i <tr>-tagget:

<tr id="rumbe<% =idnr %>" onmouseover="fShow(this.id);" onmouseout="fHide(this.id)">

function fShow(id){
    idnr = id.substring(5);
    node = document.getElementById( "info" + idnr )
    node.style.visibility = "visible";
}
function fHide(id){
    idnr = id.substring(5);
    node = document.getElementById( "info" + idnr )
    node.style.visibility = "hidden";
}

idnr er selvfølgelig din tæller i asp-koden !-)
Avatar billede peleiden Nybegynder
13. september 2003 - 12:19 #3
fik det til at virke med roenving's svar, så kom med et svar og du får points :)
Avatar billede roenving Novice
13. september 2003 - 12:21 #4
Velbekomme '-)
Avatar billede roenving Novice
13. september 2003 - 12:23 #5
-- og tak for points ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester