Ajax return content
Ik heb één functie die ziet er zo uit...
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function ajax(url, post, container, loadcontainer, loading) {
var ajax_result;
loading = typeof(loading) != 'undefined' ? loading : 'Loading...';
loadcontainer = typeof(loadbar) != 'undefined' ? loadcontainer : container;
$(loadcontainer).html("Loading...").show();
$.post(url, post, function(data) {
$(container).html(data);
ajax_result = data;
});
return ajax_result;
}
var ajax_result;
loading = typeof(loading) != 'undefined' ? loading : 'Loading...';
loadcontainer = typeof(loadbar) != 'undefined' ? loadcontainer : container;
$(loadcontainer).html("Loading...").show();
$.post(url, post, function(data) {
$(container).html(data);
ajax_result = data;
});
return ajax_result;
}
Wat ik nu verwacht van die functie dat die een (php)file oproept. Dat doet die ook. Maar als ik de ajax functie in een andere functie zou gebruiken. bijvoorbeeld:
dan zou ik denken dat er in a de content die ik terug kreeg van de opgeroepen pagina staat. Maar als ik em bijvoorbeeld simpel laat zien met jQuery in 1 div
Dat doet die niet. Ik heb dit ook geprobeerd:
Dan krijg ik undefined te zien..
Kan iemand mij helpen?
Gewijzigd op 11/01/2012 22:46:34 door Dennis Sluijk
en de topic titel aanpassen omdat "probleem" geen correcte/goede titel is..
Gewijzigd op 11/01/2012 22:51:07 door Marco PHPJunky
Marco PHPJunkie op 11/01/2012 22:42:48:
Zou je er maby Code tags omheen kunnen zetten ?
en de topic titel aanpassen omdat het geen correcte/goede titel is..
en de topic titel aanpassen omdat het geen correcte/goede titel is..
Zoiets??
Ajax is asynchroon. Dat wil zeggen, javascript gaat op zijn eigen tempo, achter je rug connectie zoeken met de server. Dat gebeurt niet onmiddellijk, dus je kunt niet zomaar die opgehaalde data als return verwachten.
Javascript verwittigt je, wanneer het de data heeft opgehaald, door een functie (callback) aan te roepen.
In jouw geval is dat dus:
Alles wat je van plan bent met die data, moet je in die functie regelen.
Let er ook op: je zit daar in een andere functie. Variabelen die in je request zijn aangemaakt kan je niet gebruiken in deze functie; en vice versa
Gewijzigd op 11/01/2012 23:23:33 door Kris Peeters
Toevoeging op 11/01/2012 23:49:19:
naaaah, Ik maak wel gewoon elke functie apart :p maar dankje voor het helpen :p