02. maj 2006 - 15:19
Der er
25 kommentarer og 1 løsning
Object doesn't support this property or method
jeg får følgende fejl, men når jeg prøver at køre en debug sker der igen en fejl og den kan ikke vises :( jeg er rimelig sikker på at det er her der er noget galt top.location.href = parent.reduce_uri(top.location.href, Array('tab', 'limit')); funktionen dertil ser således ud: function reduce_uri(uri, get_arr, add_get) { var uri_arr = uri.split('?'); var tmp_query_arr = []; if(uri_arr.length > 1) { var query_arr = uri_arr[1].split('&'); for(var i=0; i<query_arr.length; i++) { var_arr = query_arr[i].split('='); tmp_query_arr[var_arr[0]] = var_arr[1]; } var reduce_arr = []; for(var i=0; i<get_arr.length; i++) { if(tmp_query_arr[get_arr[i]]) reduce_arr[get_arr[i]] = tmp_query_arr[get_arr[i]]; } tmp_query_arr = reduce_arr; } if(add_get) { var_arr = add_get.split('='); tmp_query_arr[var_arr[0]] = var_arr[1]; } var new_query_arr = []; for(key in tmp_query_arr) { new_query_arr[new_query_arr.length] = key+'='+tmp_query_arr[key]; } var new_query = new_query_arr.join('&'); var new_uri = uri_arr[0] if(new_query) new_uri += '?'+new_query; return new_uri; } det skal lige siges at jeg bruger denne funktion andre steder uden problemer
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
Prøv at ændre denne linie: top.location.href = parent.reduce_uri(top.location.href, Array('tab', 'limit')); til: top.location.href = parent.reduce_uri(top.location.href, new Array('tab', 'limit'));
<ole> I hvilken linje sker det? /mvh </bole>
Hvad sender du med ind i funktionen (dvs. hvad indeholder top.location.href på det tidspunkt hvor funktionen kaldes)?
Prøv at alert'e 'parent' lige før linjen: alert(parent); top.location.href = parent.reduce_uri(top.location.href, new Array('tab', 'limit'));
ole > hvis jeg laver en alert som du skrev der lige før (alert(parent);) kommer der ikke en boks frem
- det var ikke det, jeg spurgte efter. Prøv med 'parent' ... ikke 'top' ;o) Det, jeg er interesseret i, er, om du overhovedet griber fat i det korrekte window-object med 'parent'. Du kan også prøve med: alert(parent.reduce_uri); - så kan du se, om den metode ligger, hvor du forventer :)
- og nu begynder vores indlæg vist at krydse hinanden :D
Check evt. Mozilla's JS-debugger. Den kommer ofte med bedre meldinger :)
hov :) $script = 'alert(parent.reduce_uri);top.location.href = parent.reduce_uri(top.location.href, Array(\'tab\', \'limit\'));'; den her bliver undefined
- ergo ligger 'reduce_uri' ikke i dit parent window-objekt ;o) Hvor den så ligger er dog ikke til at sige, når man ikke kender hierakiet
jeg bruger parent.reduce_uri i andre sammenhænge på nøjagtig samme side.. det virker lidt underligt!?
Prøv: alert(top.reduce_uri); - og: alert(reduce_uri); Hvad siger de?
Hvis du bruger 'parent.reduce_uri' andre stder på samme side - og det virker, må du have overskrevet metoden. Ellers ville den pågældende alert ikke kunne returnere 'undefined'
jeg lavede en fejl før, da jeg skulle alerte med alert(parent.reduce_uri); kom til at gøre det EFTER jeg ændrede min top.href.. hehe men nu hvor den står FØR skriver den hele min funktion
eller vent.. hvis jeg laver alert(parent.reduce_uri); i min script blok på siden får jeg hele funktionen skrevet hver gang jeg gør noget på siden men når jeg smider den lige før min reduce_uri lige idet den skal sende til en anden side får jeg undefined er det noget du sådan lige umiddelbart kan give et svar på? ved godt du ikke kender min kode
Det kan jeg ikke gennemskue udfra forklaringerne her i tråden. Prøv med et link =)
når du er logget ind kan du lige skrive en besked til mig Clark K, så forklarer jeg dig kort hvad problemet er :) håber du har tid til at hjælpe mig, for er kørt lidt fast i den fejl her
men hvis den ikke er parent.reduce_uri, hvad kunne den så hedde? min funktion ligger i min js fil som der linkes til fra min hovedside.. men i det her tilfælde kaldes funktionen fra en iframe
hovedside: <script src="req/javascripts.js" language="javascript" type="text/javascript"></script> iframe: alert(parent.reduce_uri);
der er en anden ting som måske kunne have indflydelse i de andre tilfælde jeg kalder parent.reduce_uri på siden virker det fint, men der bliver min form sendt fra iframen til iframen i det her tilfælde hvor det ikke virker er det en form som bliver sendt fra hovedsiden
Opsummering :)
http://temp.electrobeat.dk/v2/_js.txt Jeg har en iframe (tekstfilen ovenfor) på en side
Ved onload af body i min iframe bliver hele framen skrevet til hovedsiden med innerHTML
I iframen er der en form som sender til iframen, og idet formen sendes til iframen skal framen sende en "header" til hovedsiden så hele siden bliver reloaded
I min iframe (tekstfilen ovenfor) er min form fra linje 253-268 og det sted hvor formen bliver sendt til er i linje 82-94
Problemet var at alert(parent.reduce_uri) var undefined :(
- men der er en anden form i min iframe som sender på samme måde som virker som er i linje 354-370 som sender til linje 99-160 eller 180-206 Her bliver "headeren" sendt som den skal uden fejl
hehehe... jeg må være håbløs havde glemt en target i min form... *dooough* man retter for meget fokus på et sted og ser sig blindt på det
Vi tilbyder markedets bedste kurser inden for webudvikling