Ik heb een enorm wazig probleempje. Ben het nog nooit eerder tegengekomen.
Ik heb een pagina waarop 2 iframes aanwezig zijn, als kolommen.
iframe 1: treeview
iframe 2: tabpane
Zodra ik in de treeview een node aanklik, worder er in de pagina (parent van iframe treeview) de attributen van de node in een variabele geplaatst.
Vervolgens wordt de functie editInstance() aangeroepen, die de details van de node in het tabpane iframe opent.
So far so good...
Vervolgens ga ik wat wijzigingen in het tabpane iframe, en doe opslaan. Nu wordt het treeview frame gemeld dat de parentNode van de geselecteerde Node moet worden geselecteerd, en krijgt die een refresh voor zijn kiezen om de childNodes opnieuw in te laden.
Vervolgens wordt opnieuw editInstance() aangeroepen, die de parentNode details opent.
En hier gaat het fout.. zonder enige aanleiding vindt de browser het nodig om 2 niveaus dieper in de directorystructuur te gaan.
Dit is de functie
Als ik nu bijvoorbeeld de case "Page" pak, en hier ga alerten dus:
krijg ik in de eerste alert, het correcte pad terug. Nu wijzig ik vervolgens alleen de templatename, naar keys.cfm, en wat gebeurt er, deze template wordt 2 directories lager aangeroepen
Is iemand dit probleem bekend?
Ik heb een pagina waarop 2 iframes aanwezig zijn, als kolommen.
iframe 1: treeview
iframe 2: tabpane
Zodra ik in de treeview een node aanklik, worder er in de pagina (parent van iframe treeview) de attributen van de node in een variabele geplaatst.
Vervolgens wordt de functie editInstance() aangeroepen, die de details van de node in het tabpane iframe opent.
So far so good...
Vervolgens ga ik wat wijzigingen in het tabpane iframe, en doe opslaan. Nu wordt het treeview frame gemeld dat de parentNode van de geselecteerde Node moet worden geselecteerd, en krijgt die een refresh voor zijn kiezen om de childNodes opnieuw in te laden.
Vervolgens wordt opnieuw editInstance() aangeroepen, die de parentNode details opent.
En hier gaat het fout.. zonder enige aanleiding vindt de browser het nodig om 2 niveaus dieper in de directorystructuur te gaan.
Dit is de functie
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| function editInstance(){
if(typeof saved_instanceclass == 'undefined'){
alert('Fout: geen actieve selectie');
return;
}
switch(parseInt(saved_instanceclass)){
case #Request.Config.Form#:
document.frames["tabpane"].location.href = "keys/form.cfm?instanceid="+saved_instanceid;
break;
case #Request.Config.Page#:
document.frames["tabpane"].location.href = "keys/page.cfm?instanceid="+saved_instanceid;
break;
case #Request.Config.Fieldset#:
document.frames["tabpane"].location.href = "keys/fieldset.cfm?instanceid="+saved_instanceid;
break;
case #Request.Config.Input_Text#:
document.frames["tabpane"].location.href = "keys/input_text.cfm?instanceid="+saved_instanceid;
break;
case #Request.Config.Input_Textarea#:
document.frames["tabpane"].location.href = "keys/input_textarea.cfm?instanceid="+saved_instanceid;
break;
case #Request.Config.Input_Checkbox#:
document.frames["tabpane"].location.href = "keys/input_checkbox.cfm?instanceid="+saved_instanceid;
break;
case #Request.Config.Input_Radio#:
document.frames["tabpane"].location.href = "keys/input_radio.cfm?instanceid="+saved_instanceid;
break;
case #Request.Config.Input_Select#:
document.frames["tabpane"].location.href = "keys/input_select.cfm?instanceid="+saved_instanceid;
break;
case #Request.Config.FreeText#:
document.frames["tabpane"].location.href = "keys/freetext.cfm?instanceid="+saved_instanceid;
break;
default:
alert('Exception ##23: class niet geregistreerd\n\nDiagnostic information:\ninvoked class = '+saved_instanceclass);
break;
}
} |
Als ik nu bijvoorbeeld de case "Page" pak, en hier ga alerten dus:
code:
1
2
3
4
5
| case #Request.Config.Page#: alert(document.frames["tabpane"].location.href); document.frames["tabpane"].location.href = "keys/page.cfm?instanceid="+saved_instanceid; alert(document.frames["tabpane"].location.href); break; |
krijg ik in de eerste alert, het correcte pad terug. Nu wijzig ik vervolgens alleen de templatename, naar keys.cfm, en wat gebeurt er, deze template wordt 2 directories lager aangeroepen
Is iemand dit probleem bekend?