Avatar billede jtc Nybegynder
16. december 2003 - 15:00 Der er 11 kommentarer og
1 løsning

Simpel fejl ved visning af layer

Hvorfor kan jeg ikke få vist mit layer
Følgende står i en løkke i en asp-kode:
<em><font color="#000000"><a href="#" onClick="MM_showHideLayers('Slet','','show')">Slet</a></font></em>

og her er mit layer
      <div id="Slet" style="position:absolute; width:200px; height:115px; z-index:1; left: 228px; top: 189px; visibility: hidden; background-color: #000000; layer-background-color: #000000; border: 1px none #000000;">
        <form name="form2" method="post" action="">
          <input name="Slet" type="button" id="Slet" onclick value="Slet""/admin/staevne/slet.asp?id=<% = indlaeg.Fields("id")%>">
          <input name="Fortryd" type="button" id="Fortryd" onClick="MM_showHideLayers('Slet','','hide')" value="Fortryd">
        </form>
      </div>
Avatar billede roenving Novice
16. december 2003 - 15:01 #1
Hvordan ser MM_showHideLayers()-funktionen ud ?-)
Avatar billede jtc Nybegynder
16. december 2003 - 15:04 #2
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; }
}
Avatar billede roenving Novice
16. december 2003 - 15:08 #3
Hvad med MM_findObj() ?-)

-- det ser nemlig rigtigt ud !-)
Avatar billede jtc Nybegynder
16. december 2003 - 15:12 #4
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;
}
Avatar billede jtc Nybegynder
16. december 2003 - 15:13 #5
men kan det have noget at gøre med hvor layeret ligger i koden
Avatar billede roenving Novice
16. december 2003 - 15:20 #6
Ja, men den der (DreamWeaver ?-) kode er ret grundig til at forsøge at finde objektet, men hvis du har <div>en i en anden (i)frame kan den ikke finde den uden at du skriver:

MM_showHideLayers('Slet?ditFrameNavn','','hide')"
Avatar billede jtc Nybegynder
16. december 2003 - 15:25 #7
Det ligger i starten af loopen og vil ikke komme frem, men hvis jeg ligger det udenfor kommer det frem, så kan jeg bar ikke styre indlaeg.Fields("id"), så hvad skal jeg gøre
<%
While NOT indlaeg.EOF
%>
      <div id="Slet" style="position:absolute; width:200px; height:115px; z-index:1; left: 228px; top: 189px; background-color: #000000; layer-background-color: #000000; border: 1px none #000000; visibility: hidden;">
        <a href="/admin/staevne/slet.asp?id=<% = indlaeg.Fields("id")%>">slet</a>
        <a href="#" onClick="MM_showHideLayers('Slet','','hide')">fortryd</a>
      </div>
                    <table width="740" border="0" cellpadding="0" cellspacing="0">
                      <tr>
                        <td width="740" valign="top"><div align="left"></div>
                          <table width="740" border="0" cellspacing="0" cellpadding="0">
                            <tr valign="middle">
                              <td width="80" height="23"> <div align="left"><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><font color="#000000">
                                  <% = FormatMinDato(indlaeg.fields("dato")) %>
                                  </font></font></div></td>
                              <td height="23"> <div align="left"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
                                  <%
                            If indlaeg.fields("staevne") <> "" then Response.Write(indlaeg.fields("staevne"))
                            %>
                                  <%
                            If indlaeg.fields("turnering") <> "" then Response.Write(" - " & indlaeg.fields("turnering") )
                            %>
                                  </font></div></td>
                              <td><div align="right"><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><em><font color="#000000"><a href="/admin/staevne/opdater.asp?id=<% = indlaeg.Fields("id")%>">Opdater</a></font></em>
                                  <em><font color="#000000"><a href="#" onClick="MM_showHideLayers('Slet','','show')">Slet</a></font></em></font></div></td>
                              <td width="60"><div align="center"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
                                  <% = indlaeg.fields("kategori") %>
                                  </font></div></td>
                              <td width="75" height="23"> <div align="center"><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><font color="#000000">
                                  <% = indlaeg.fields("spillested") %>
                                  </font></font></div></td>
                              <td width="65" height="23"> <div align="center"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
                                  <%
                                If Right(indlaeg.Fields("indbydelse"), 3) = "pdf" Then
                                    Response.Write("<a href="""" onClick=""window.open('http://" & indlaeg.fields("indbydelse") & "','mitvindue','width=750,height=500,resizable=yes');return false;""><img src='../../pic/pdf.gif' width='19' height='17' border='0'></a>")
                                ElseIf isNull(indlaeg.Fields("indbydelse")) = true Then
                                    Response.Write("<font face='Verdana' size='2'> - ")
                                Else
                                    Response.Write("<a href='http://" & indlaeg.fields("indbydelse") & "' target='_blank'>" & "<img src='../../pic/explorer.gif' width='20' height='20' border='0'>" & "</a>")
                                End if
                          %>
                                  </font></div></td>
                              <td width="65" height="23"> <div align="center"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
                                  <%
                                If Right(indlaeg.Fields("startliste"), 3) = "pdf" Then
                                    Response.Write("<a href="""" onClick=""window.open('http://" & indlaeg.fields("startliste") & "','mitvindue','width=750,height=500,resizable=yes');return false;""><img src='../../pic/pdf.gif' width='19' height='17' border='0'></a>")
                                ElseIf isNull(indlaeg.Fields("startliste")) = true Then
                                    Response.Write("<font face='Verdana' size='2'> - ")
                                Else
                                    Response.Write("<a href='http://" & indlaeg.fields("startliste") & "' target='_blank'>" & "<img src='../../pic/explorer.gif' width='20' height='20' border='0'>" & "</a>")
                                End if
                          %>
                                  </font></div></td>
                              <td width="65" height="23"> <div align="center"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
                                  <%
                                If Right(indlaeg.Fields("resultater"), 3) = "pdf" Then
                                    Response.Write("<a href="""" onClick=""window.open('http://" & indlaeg.fields("resultater") & "','mitvindue','width=750,height=500,resizable=yes');return false;""><img src='../../pic/pdf.gif' width='19' height='17' border='0'></a>")
                                ElseIf isNull(indlaeg.Fields("resultater")) = true Then
                                    Response.Write("<font face='Verdana' size='2'> - ")
                                Else
                                    Response.Write("<a href='http://" & indlaeg.fields("resultater") & "' target='_blank'>" & "<img src='../../pic/explorer.gif' width='20' height='20' border='0'>" & "</a>")
                                End if
                          %>
                                  </font></div></tr>
                          </table></td>
                      </tr>
                    </table>
                    <font face="Verdana, Arial, Helvetica, sans-serif">
                    <%
indlaeg.MoveNext
Wend
%>
Avatar billede jtc Nybegynder
16. december 2003 - 15:31 #8
Jeg fandt selv en løsning ved af sætte <% = indlaeg.Fields("id")%> ind efter slet i mine showhidefunktioner og samtidig i mit layer id
Avatar billede roenving Novice
16. december 2003 - 15:32 #9
Men så har du flere objekter med samme id og det er ikke tilladt, typisk vil browseren kun kunne finde den første forekomst !-)
Avatar billede roenving Novice
16. december 2003 - 15:32 #10
Det er rigtigt, du må sætte en tæller på !-)
Avatar billede jtc Nybegynder
16. december 2003 - 15:38 #11
Men tak for hjælpen alligevel
Avatar billede jtc Nybegynder
18. januar 2004 - 22:13 #12
lukker
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