Toon posts:

startDownload functie

Pagina: 1
Acties:

Verwijderd

Topicstarter
StartDownload is een javascript/XML functie van microsoft.
"source" geeft aan uit welke file hij zijn data moet halen.
"outputdata" is de functie waar de opgehaalde data naar toe moet voor verdere verwerking:

loader.startDownload(source, outputdata);


Ik wil graag (naast de opgehaalde data) nog een extra variabele meegeven naar de functie outputdata. De id van de DIV waarin ik de opgehaalde data in wil stoppen namelijk. Hard coded is geen optie, omdat ik verschillende DIV's wil kunnen updaten. Hoe pak ik dit aan?

Situatie nu:

// Functie wordt in body aangeroepen. Hierin 2 arrays: de DIV id's en de bedoelde bronbestanden.

onLoad=Engine(new Array('div1','div2','nogeendiv'),new Array('bronvan1.htm', 'bron2.htm', 'laatstebron.txt'))


// Hier passeren de verschillende DIV's en bronbestanden de revue

function Engine(divje,source) {
for(var i = 0; i < divje.length; i++) {
loaddata(divje[i],source[i]);
}
}


// De inhoud van de DIV wordt op "loading..." gezet terwijl de data wordt opgehaald

function loaddata(divje,source) {
outputdata("Loading...",divje);
loader.startDownload(source, outputdata); // divje moet mee, hoe???
}


// De innerHTML van het DIVje wordt geset.

function outputdata(data,divje) {
eval(divje).innerHTML = data;

}

[ Voor 7% gewijzigd door Verwijderd op 16-12-2002 16:26 ]


  • r0bert
  • Registratie: September 2001
  • Laatst online: 11-08 16:19
JavaScript:
1
2
3
4
5
6
7
8
9
10
function Engine(divje,source)
{
   for(var i = 0; i < divje.length; i++)
   {
      document.getElementById(divje[i]).innerHTML = "Loading...";

      document.getElementById(divje[i]).innerHTML = loader.startDownload(source[i]); 
         // en wat wil je nu voor data naar de div schrijven ?
   }
}

probeer anders eens:
JavaScript:
7
    alert(loader.startDownload(source[i])); 

ps. ik vind de functie een beetje erg vaag

[edit]
http://msdn.microsoft.com...methods/startdownload.asp

Hier staat dat de functie helemaal geen data returned dus het bovenstaande werkt zowiezo niet. Alleen de content van textfiles

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function Engine(divje,source)
{
   for(var i = 0; i < divje.length; i++)
   {
      document.getElementById(divje[i]).innerHTML = "Loading...";

     document.getElementById(divje[i]).innerHTML = loader.startDownload(source[i],
         fnOnDLComplete(document.getElementById(divje[i]))); 
             // hoe krijg je de data gereturned ?
   }
}

function fnOnDLComplete(objDiv)
{
     alert('en wat wil je nu na de dload doen dan?');
     objDiv.innerHTML = "Download is voltooid :S ?";
}


Ps. dat microsoft example (IE 5+) werkt hier niet eens in ie 5.5

[ Voor 69% gewijzigd door r0bert op 16-12-2002 16:49 . Reden: code=js, 7 ]


Verwijderd

Topicstarter
Er zijn twee functies voor het ophalen en outputten van data nodig, omdat de startDownload functie standaard een andere functie aanroept, waar hij zijn opgehaalde data naar toe stuurt.

Ik heb inderdaad al eens geprobeerd de data die door startDownload wordt opgehaald toe te kennen aan een variabele, maar dat gaat niet.
In ieder geval bedankt voor je hulp. Bij www.darkblue.com (moet je wel een account hebben) heb ik overigens mijn inspiratie gehaald. Erg mooi en heel dynamisch.