|  | 		    
					
        
         
          
         
	
          | |  | Underlig fejl Fra : Anders M
 | 
 Dato :  12-12-09 12:47
 | 
 |  | 
 
            Hej,
 Jeg har lavet en javascript funktion som viser en div (med data
 fra en ekstern side via ajax) når man klikker på et link. Det
 virker fint, men IE laver en fejl og skriver "Dataene som kræves
 for at fuldføre handlingen er ikke til rådighed endnu".
 Hvad kan det betyde?
 Mvh Anders
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
  Rune Jensen (12-12-2009) 
 
	
          | |  | Kommentar Fra : Rune Jensen
 | 
 Dato :  12-12-09 12:48
 | 
 |  | Anders M skrev:
 > Hej,
 >
 > Jeg har lavet en javascript funktion som viser en div (med data
 > fra en ekstern side via ajax) når man klikker på et link. Det
 > virker fint, men IE laver en fejl og skriver "Dataene som kræves
 > for at fuldføre handlingen er ikke til rådighed endnu".
 >
 > Hvad kan det betyde?
 
 Fejl koden?
 
 
 MVH
 Rune Jensen
 
 
 |  |  | 
  Rune Jensen (12-12-2009) 
 
	
          | |  | Kommentar Fra : Rune Jensen
 | 
 Dato :  12-12-09 12:51
 | 
 |  | Rune Jensen skrev:
 > Anders M skrev:
 >> Hej,
 >>
 >> Jeg har lavet en javascript funktion som viser en div (med data
 >> fra en ekstern side via ajax) når man klikker på et link. Det
 >> virker fint, men IE laver en fejl og skriver "Dataene som kræves
 >> for at fuldføre handlingen er ikke til rådighed endnu".
 >>
 >> Hvad kan det betyde?
 >
 > Fejl koden?
 
 Et forsøg på at være morsom. Der skulle have stået "Fejl i koden?" For
 det er nok, hvad din fejludskrift betyder. Hvis du vil undgå
 "morsomheder", så kast et link. Ellers er der nok andre med "humor"
 herinde end mig
 
 ;)
 
 
 MVH
 Rune Jensen
 
 
 |  |  | 
   Anders M (12-12-2009) 
 
	
          | |  | Kommentar Fra : Anders M
 | 
 Dato :  12-12-09 13:31
 | 
 |  | 
 
            Rune Jensen wrote in dk.edb.internet.webdesign.clientside:
 > Rune Jensen skrev: 
 > > Anders M skrev: 
 > >> Hej, 
 > >> 
 > >> Jeg har lavet en javascript funktion som viser en div (med data 
 > >> fra en ekstern side via ajax) når man klikker på et link. Det 
 > >> virker fint, men IE laver en fejl og skriver "Dataene som kræves 
 > >> for at fuldføre handlingen er ikke til rådighed endnu". 
 > >> 
 > >> Hvad kan det betyde? 
 > >  
 > > Fejl koden? 
 >  
 > Et forsøg på at være morsom. Der skulle have stået "Fejl i koden?" For  
 > det er nok, hvad din fejludskrift betyder. Hvis du vil undgå  
 > "morsomheder", så kast et link. Ellers er der nok andre med "humor"  
 > herinde end mig 
 >  
 > ;) 
 hehe :)
http://agmweb.dk/admin/  (brugernavn: htmldk kode: jesper)
 du finder fejlen når du trykker på "Sider"
 mvh Anders
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
    Rune Jensen (12-12-2009) 
 
	
          | |  | Kommentar Fra : Rune Jensen
 | 
 Dato :  12-12-09 14:20
 | 
 |  | 
 
            Anders M skrev:
 > hehe :)
 > 
 > http://agmweb.dk/admin/  (brugernavn: htmldk kode: jesper)
 > 
 > du finder fejlen når du trykker på "Sider"
 Bortset fra, at DIVen er lidt for bred for indholdet, vises det fint i 
 både SeaMonkey og IE8. Jeg kan også klikke på + og det virker også.
 Hvilken version af IE tester du i?
 PS. Ku' jo ikke vide, det var en admin side, så ville jeg nok have sagt 
 det anderledes. F.eks. skulle linket have været 
 ikke-klikbart/obfuscated. Jeg er lidt øm for at rode rundt på sådanne 
 også, husk at ændre pass osv. når det virker
 MVH
 Rune Jensen
            
             |  |  | 
     Rune Jensen (12-12-2009) 
 
	
          | |  | Kommentar Fra : Rune Jensen
 | 
 Dato :  12-12-09 14:29
 | 
 |  | Rune Jensen skrev:
 
 > Bortset fra, at DIVen er lidt for bred for indholdet, vises det fint i
 > både SeaMonkey og IE8. Jeg kan også klikke på + og det virker også.
 
 Den fungerer, men vises faktisk med fejl, det er korrekt.
 
 Du har en
 "Objektet understøtter ikke denne metode eller egenskab" også.
 
 Det tegn, som skaber problemer, lader til at være $
 
 Det er en JQuery-ting?
 
 I så fald, skal JQuery jo kunne køres før det virker. Det er ét af
 problemerne med frameworks, det ligger ikke inde i browseren fra start..
 
 Jeg kender intet til JQuery, men det er der andre, som gør.
 
 
 MVH
 Rune Jensen
 
 
 |  |  | 
     Anders M (12-12-2009) 
 
	
          | |  | Kommentar Fra : Anders M
 | 
 Dato :  12-12-09 14:34
 | 
 |  | 
 
            > Bortset fra, at DIVen er lidt for bred for indholdet, vises det fint i  
 > både SeaMonkey og IE8. Jeg kan også klikke på + og det virker også. 
 >  
 > Hvilken version af IE tester du i? 
 IE8. Det virker som sagt fint, men den skriver, at der er en fejl
 > PS. Ku' jo ikke vide, det var en admin side, så ville jeg nok have sagt
 > det anderledes. F.eks. skulle linket have været  
 > ikke-klikbart/obfuscated. Jeg er lidt øm for at rode rundt på sådanne  
 > også, husk at ændre pass osv. når det virker 
 ja, men det er ikke et system af stor betydning eftersom jeg udelukkende
 laver det for sjov (er kun 15år..), så det er ikke så følsomt. 
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
      Rune Jensen (12-12-2009) 
 
	
          | |  | Kommentar Fra : Rune Jensen
 | 
 Dato :  12-12-09 15:01
 | 
 |  | Anders M skrev:
 >> Bortset fra, at DIVen er lidt for bred for indholdet, vises det fint i
 >> både SeaMonkey og IE8. Jeg kan også klikke på + og det virker også.
 >>
 >> Hvilken version af IE tester du i?
 >
 > IE8. Det virker som sagt fint, men den skriver, at der er en fejl
 
 Ja, det er mig, som ikke kan læse indenad..
 
 >> PS. Ku' jo ikke vide, det var en admin side, så ville jeg nok have sagt
 >> det anderledes. F.eks. skulle linket have været
 >> ikke-klikbart/obfuscated. Jeg er lidt øm for at rode rundt på sådanne
 >> også, husk at ændre pass osv. når det virker
 >
 > ja, men det er ikke et system af stor betydning eftersom jeg udelukkende
 > laver det for sjov (er kun 15år..), så det er ikke så følsomt.
 
 Havde nu ikke gættet, du kun er 15. Det er da meget godt gået at gå i
 gang med JS. Men man bliver jo klogere i en yngre alder nu..
 
 Dine fejl kan jeg spore til denne
 
 Dataene, som kræves for at fuldføre handlingen, er ikke til rådighed endnu.
 pagesoverview.js.php, linje 27 tegn 4:
 
 
 
 {
 //Pagesoveriew is closed
 pagesoverview_link.className = "link_open";
 pagesoverview_overview.className = "overview_open";
 
 var url = "/admin/js/pagesoverview.js.php?p=tree";
 url = url + "&sid=" + Math.random();
 xmlhttp.onreadystatechange = function(){
 loadfile("/admin/js/context.js", "js");
 
 fejl1-> document.getElementById("pagesoverview_tree").innerHTML =
 xmlhttp.responseText;
 }
 
 xmlhttp.open("GET",url,true);
 xmlhttp.send(null);
 
 
 fejl2->          $("#sitetree li").contextMenu({
 
 menu: 'pagesoverview_context'
 
 },
 
 
 Det kan være, det kan hjælpe andre, men ellers har jeg bare brugt
 udviklingsværktøjerne i IE. Det ligner, der er noget JQuery indblandet,
 så kan jeg ikke rigtigt være med ;)
 
 
 MVH
 Rune Jensen
 
 
 |  |  | 
       Anders M (12-12-2009) 
 
	
          | |  | Kommentar Fra : Anders M
 | 
 Dato :  12-12-09 17:36
 | 
 |  | 
 
            Rune Jensen wrote in dk.edb.internet.webdesign.clientside:
 > Anders M skrev: 
 > >> Bortset fra, at DIVen er lidt for bred for indholdet, vises det fint i   
 > >> både SeaMonkey og IE8. Jeg kan også klikke på + og det virker også.  
 > >>   
 > >> Hvilken version af IE tester du i?  
 > >  
 > > IE8. Det virker som sagt fint, men den skriver, at der er en fejl 
 >  
 > Ja, det er mig, som ikke kan læse indenad.. 
 >  
 > >> PS. Ku' jo ikke vide, det var en admin side, så ville jeg nok have sagt 
 > >> det anderledes. F.eks. skulle linket have været   
 > >> ikke-klikbart/obfuscated. Jeg er lidt øm for at rode rundt på sådanne   
 > >> også, husk at ændre pass osv. når det virker  
 > >  
 > > ja, men det er ikke et system af stor betydning eftersom jeg udelukkende 
 > > laver det for sjov (er kun 15år..), så det er ikke så følsomt.  
 >  
 > Havde nu ikke gættet, du kun er 15. Det er da meget godt gået at gå i  
 > gang med JS. Men man bliver jo klogere i en yngre alder nu.. 
 >  
 > Dine fejl kan jeg spore til denne 
 >  
 > Dataene, som kræves for at fuldføre handlingen, er ikke til rådighed endnu. 
 >    pagesoverview.js.php, linje 27 tegn 4: 
 >  
 >  
 >  
 >    { 
 >       //Pagesoveriew is closed 
 >       pagesoverview_link.className = "link_open"; 
 >       pagesoverview_overview.className = "overview_open"; 
 >        
 >       var url = "/admin/js/pagesoverview.js.php?p=tree"; 
 >       url = url + "&sid=" + Math.random(); 
 >       xmlhttp.onreadystatechange = function(){ 
 >          loadfile("/admin/js/context.js", "js"); 
 >           
 > fejl1-> document.getElementById("pagesoverview_tree").innerHTML =  
 > xmlhttp.responseText; 
 >       } 
 >        
 >       xmlhttp.open("GET",url,true); 
 >       xmlhttp.send(null);       
 >  
 >        
 > fejl2->          $("#sitetree li").contextMenu({ 
 >        
 >               menu: 'pagesoverview_context' 
 >        
 >           }, 
 >  
 >  
 > Det kan være, det kan hjælpe andre, men ellers har jeg bare brugt  
 > udviklingsværktøjerne i IE. Det ligner, der er noget JQuery indblandet,  
 > så kan jeg ikke rigtigt være med ;) 
 vil helst også slippe for jquery da det er så uigennemtænkt, men jeg har ikke
 kunnet finde andre contextmenuer som ved hjælp af en ul kan vise samme
 contextmenu på alle elementer og så hente id'en fra listen med sider til den
 funktion der læses af contextmenuen. Måske har du (eller en anden) kendskab
 til sådan en uden om jquery?
 MVh Anders
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
       Anders M (12-12-2009) 
 
	
          | |  | Kommentar Fra : Anders M
 | 
 Dato :  12-12-09 20:52
 | 
 |  | 
 
            hey,
 jeg er nu ved at lave min egen context menu vha. oncontextmenu, og er stødt på
 det problem, at jeg ikke kan finde elementes position.. er der en simpel
 funktion til det?
 MNvh Anders
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
        Birger Sørensen (12-12-2009) 
 
	
          | |  | Kommentar Fra : Birger Sørensen
 | 
 Dato :  12-12-09 21:29
 | 
 |  | 
 
            Anders M frembragte:
 > hey,
 >
 > jeg er nu ved at lave min egen context menu vha. oncontextmenu, og er stødt 
 > på det problem, at jeg ikke kan finde elementes position.. er der en simpel
 > funktion til det?
 >
 > MNvh Anders
 elm.style.top giver afstanden til toppen som defineret istyle
 og ellers elm.offsetTop giver afstanden i pixels - og det er nok den du 
 skal bruge.
 Tilsvarende elm.offsetLeft.
 Dette er i forhold til det element, det aktuelle er indsat i.
 Det kan være nødvendigt at iterere over parents - afhængig af hvordan 
 du indsætter context menuen.
 Birger
 -- 
http://varmeretter.dk  - billig, sund og hurtig mad
http://bbsorensen.dk |  |  | 
         Anders M (13-12-2009) 
 
	
          | |  | Kommentar Fra : Anders M
 | 
 Dato :  13-12-09 17:50
 | 
 |  | 
 
            Birger Sørensen wrote in dk.edb.internet.webdesign.clientside:
 > Anders M frembragte: 
 > > hey, 
 > > 
 > > jeg er nu ved at lave min egen context menu vha. oncontextmenu, og er stødt  
 > > på det problem, at jeg ikke kan finde elementes position.. er der en simpel 
 > > funktion til det? 
 > > 
 > > MNvh Anders 
 >  
 > elm.style.top giver afstanden til toppen som defineret istyle 
 > og ellers elm.offsetTop giver afstanden i pixels - og det er nok den du  
 > skal bruge. 
 > Tilsvarende elm.offsetLeft. 
 > Dette er i forhold til det element, det aktuelle er indsat i. 
 > Det kan være nødvendigt at iterere over parents - afhængig af hvordan  
 > du indsætter context menuen. 
 >  
 > Birger 
 >  
 > --  
 > http://varmeretter.dk  - billig, sund og hurtig mad 
 > http://bbsorensen.dk >  
 Hey igen,
 Nu har jeg lavet en contextmenu som virker medmindre man scroller.. det er vel
 muses position man skal have fat i, og i så fald: hvordan?
 Mvh Anders
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
  Birger Sørensen (12-12-2009) 
 
	
          | |  | Kommentar Fra : Birger Sørensen
 | 
 Dato :  12-12-09 15:07
 | 
 |  | 
 
            Anders M skrev den 12-12-2009:
 > Hej,
 >
 > Jeg har lavet en javascript funktion som viser en div (med data
 > fra en ekstern side via ajax) når man klikker på et link. Det
 > virker fint, men IE laver en fejl og skriver "Dataene som kræves
 > for at fuldføre handlingen er ikke til rådighed endnu".
 >
 > Hvad kan det betyde?
 >
 > Mvh Anders
 Der er helt klart en eller anden fejl i linie 27(IE) i dit script i 
 /admin/js/pagesoverview.js.php
 Du bruger resultatet fra en AJAX
  document.getElementById("pagesoverview_tree").innerHTML = 
 xmlhttp.responseText;
 før du har sendt requesten. Og det svarer faktisk til den fejl IE giver 
 - de data du ønsker at indsætte, har du ikke hentet endnu...
 (Og open() skal stadig kaldes som det første trin i AJAX-raketten...)
 Birger
 -- 
http://varmeretter.dk  - billig, sund og hurtig mad
http://bbsorensen.dk |  |  | 
  Anders M (12-12-2009) 
 
	
          | |  | Kommentar Fra : Anders M
 | 
 Dato :  12-12-09 17:40
 | 
 |  | 
 
            > Der er helt klart en eller anden fejl i linie 27(IE) i dit script i  
 > /admin/js/pagesoverview.js.php 
 > Du bruger resultatet fra en AJAX 
 >  document.getElementById("pagesoverview_tree").innerHTML =  
 > xmlhttp.responseText; 
 > før du har sendt requesten. Og det svarer faktisk til den fejl IE giver  
 > - de data du ønsker at indsætte, har du ikke hentet endnu... 
 > (Og open() skal stadig kaldes som det første trin i AJAX-raketten...) 
 >  
 > Birger 
 der kan man se.. nu viser ie ingen fejl da jeg flyttede open og send over
 onreadystatechange.. mange tak..
 MVh Anders
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
   Birger Sørensen (12-12-2009) 
 
	
          | |  | Kommentar Fra : Birger Sørensen
 | 
 Dato :  12-12-09 18:21
 | 
 |  | 
 
            Anders M kom med følgende:
 >> Der er helt klart en eller anden fejl i linie 27(IE) i dit script i  
 >> /admin/js/pagesoverview.js.php 
 >> Du bruger resultatet fra en AJAX 
 >>  document.getElementById("pagesoverview_tree").innerHTML =  
 >> xmlhttp.responseText; 
 >> før du har sendt requesten. Og det svarer faktisk til den fejl IE giver  
 >> - de data du ønsker at indsætte, har du ikke hentet endnu... 
 >> (Og open() skal stadig kaldes som det første trin i AJAX-raketten...) 
 >>  
 >> Birger 
 >
 > der kan man se.. nu viser ie ingen fejl da jeg flyttede open og send over
 > onreadystatechange.. mange tak..
 >
 > MVh Anders
 Øhm... nu kan jeg ikke lige huske din kode - men det første du skal gøre, er at instantiere (oprette) objectet - det gør du også.
 Det næste er at kalde open. Derefter skal du sætte andre parametre som f.eks onreadystatechange, og til sidst kalde send().
 Det du vil gøre med data der hentes, skal gøres i den funktion der tildeles onreadystatechange, efter check for readystate == 4 og state == 200( 100, 304, og de andre, der er OK).
 Hentede  så lige din kode. Forståelsen er ret vigtig, og da du næppe har en masse erfaring, er her et alternativ, til den første del af den funktion der driller dig.
 function showpages() {
   var pagesoverview_link = document.getElementById("pagesoverview_link");
   var pagesoverview_overview = document.getElementById("pagesoverview_overview");
   if(pagesoverview_link.className=="link_open") { // Pagesoverview is open
     pagesoverview_link.className = "link_closed";
     pagesoverview_overview.className = "overview_closed";
     }
   else { //Pagesoveriew is closed
     /* Bemærk - al AJAX er flyttet hertil, fordi det kun er her der er brug for den.. der burde være noget fejlhåndtering, hvis xmlhhtp objectet ikke kan instantieres */
     pagesoverview_link.className = "link_open";
     pagesoverview_overview.className = "overview_open";
     if ( xmlhttp = GetXmlHttpObject()) {
       var url = "/admin/js/pagesoverview.js.php?p=tree";
       url = url + "&sid=" + Math.random();
       xmlhttp.open("GET",url,true);
       xmlhttp.onreadystatechange = function(){
         loadfile("/admin/js/context.js", "js"); // Ved ikke hvad det her gør - JQuery?
         if ( xmlhttp.readyState == 4) {
           if ( xmlhttp.status == 200) {
             document.getElementById("pagesoverview_tree").innerHTML = xmlhttp.responseText;
             }
           }
         }
       xmlhttp.send(null);
       }
     else { alert( 'Kan ikke oprette xmlhttp object'); }
     .... // resten af det du gør, hvis sideoversigten åbnes, som ikke gøres når den lukkes
     }
   }
 Se evt. http://bbsorensen.dk?men=Software/AJAX  for lidt mere forklaring.
 Birger
 -- 
http://varmeretter.dk  - billig, sund og hurtig mad
http://bbsorensen.dk |  |  | 
 |  |