/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
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



Søg
Reklame
Statistik
Spørgsmål : 177577
Tips : 31968
Nyheder : 719565
Indlæg : 6409071
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste