Avatar billede freesite Nybegynder
23. november 2005 - 20:06 Der er 8 kommentarer og
1 løsning

fejl i kode angående onclick i funktion

hej ville lige høre om der ikke er nogle som kan hjælpe.

jeg kalder en funktion med onclick=" getDayPages(i)" inde i den funkion kalder jeg igen en funktion med onclick= "passData("+i+")".

tror fejlen ligger her.
//--------------------------------------------------
function getDayPages(i){
var x=event.clientX;
var y=event.clientY;
var h=0;
var temph=0;
var text="";
    text="<table border=0 style=cursor:hand; cellspacing=5 width=95% bordercolor=BBBBBB>";
    text+="<td bgcolor=EEEEBB><font color=800000 face=verdana size=2><b>Dato.&nbsp&nbsp"+i+"-"+month+"-"+year+"</b></font></td>";
    for(k=0;k<adjlist.length;k++){
      if(adjlist[k].dato==year+""+month+""+i){
          text+="<tr><td bgcolor=FFFFFF><font color=00000B face=verdana size=2>"+adjlist[k].text+"</font></td></tr>";
          if(adjlist[k].text.length<26)
            h++
          temph=parseInt(adjlist[k].text.length/25)
          h=h+temph;
      }   
    }
if(h==0){
  text+="<tr><td bgcolor=FFFFFF><font color=00000B face=verdana size=2>Ingen reminder</font></td></tr>";
  h++;
}

text+="</table>";

//------------------- fejl her ---------------------------------

var setnew = "<a onclick=passData("+i+");return false><font face=verdana color=#800000 size=1>Indsæt reminder</font></a>"

text+=setnew;

var p=window.createPopup()
var pbody=p.document.body
pbody.style.backgroundColor="EEEEEE"
pbody.style.border="solid gray 1px"
pbody.innerHTML=text;
p.show(x,y,200,(50+(h*25)),document.body)
}

function passData(data) {
    windowHandle = window.open('popup.htm' + '?' + data,'windowName','resizable=no,width=200,height=200');
}

------------------------------------------------
har ige lavet et link til hele skriptet her da det fylder 190 linier.
http://mhe.frac.dk/kalende.html

"fejlen kommer når man klikker på et felt i tabellen og kligger på 'indsæt reminder' "

Ps håber der er en som kan hjælpe,
Avatar billede roenving Novice
23. november 2005 - 20:20 #1
Hrm, jeg ved ikke hvordan popups har det, men et simpelt forsøg er:

var setnew = "<a onclick='parent.passData("+i+");return false' style='font-family:verdana,sans-serif;color=#800000;font-size:xx-small;'>Indsæt reminder</a>"

-- iøvrigt bruges der en masse bagudkompatibel kode, men hvordan harmonerer det med, at du bruger en relativ ny ting som createPopup, som jo først er med i IE5.5, og uden problemer kan benytte sig af nutidig kode ...

-- og er det med vilje, at du laver noget, som kun virker i een eneste browser ?-)

F.eks. bør du, hvis du da ikke ellers bruger 1992-kode skrive:

    text+="<td style='background:#eeb;color:#800000;font-family:verdana,sans-serif;font-size:x-small;font-weight:bold;'>Dato.&nbsp&nbsp"+i+"-"+month+"-"+year+"</td>";
Avatar billede freesite Nybegynder
23. november 2005 - 20:33 #2
hehe, <roenving> du gjorde det sku igen, det virker.
er imponeret.  :-)

vil du ligge et svar, så vil jeg med glæde give point.

ps.
angående
text+="<td style='background:#eeb;color:#800000;font-family:verdana,sans-serif;font-size:x-small;font-weight:bold;'>Dato.&nbsp&nbsp"+i+"-"+month+"-"+year+"</td>";
vil jeg stærkt overveje det du siger, men vil først lige have det til at virke på min egen først, så optimere jeg.

takker for hurtigt og præcist svar.
Avatar billede roenving Novice
23. november 2005 - 20:38 #3
Velbekomme '-)

PS. Er det med vilje, at du laver IE5.5+ only kode ?-)
Avatar billede freesite Nybegynder
23. november 2005 - 20:54 #4
nej, egentlig ikke, men koder det i frontpages, den kommer selv med forslag. har læst noget om at det ikke kan vises i alle browsere, kun i explore. Men i første omgang gør det ikke så meget, vil lige have det hele til at virke, så vil jeg begynde at optimere det til flere clienter
Avatar billede roenving Novice
23. november 2005 - 21:00 #5
-- tjah, præcis createPopup kan du ikke på nogen måde genskabe i nogensomhelst anden browser, så du skulle måske prøve at kigge en anden vej ?-)

-- og tak for point ;~}
Avatar billede freesite Nybegynder
23. november 2005 - 21:09 #6
ok, lige præcis den funktion tvinger også folk til at aktivere popup, er der en anden vej som er næsten lige så simpel.
hvis det er for indviklet at forklare er det bare iorden.
Avatar billede freesite Nybegynder
23. november 2005 - 21:10 #7
mit spørgsmål var jo besvaret
:-)
Avatar billede freesite Nybegynder
23. november 2005 - 21:12 #8
undskyld jeg tager fejl, den tvinger mig ikke til at aktivere popup, min fejl
Avatar billede roenving Novice
23. november 2005 - 21:13 #9
Tjah, jeg mener at Erik Bosrup har nogle eksempler, som er ret tæt på dit behov, hvis du kigger på hans overLIB: http://www.bosrup.com/web/overlib/ !-)

-- men du ønsker jo noget i den stil, som createPopup giver mulighed for, så det kan blive en anelse besværligt at løfte den ...

-- men hvis du bare kalder overLib-funktionen i stedet for createPopup-funktionen, er jeg ret sikker på, at der ikke er så langt igen !o]
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