[jquery] load, laat wel maar steekt het niet weg
ik gebruik deze code
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
var module = $(this).attr('id');
$('#actievenster').fadeOut('slow', function() {
$("#werkgeheugen").load("module/handelaar.php?module=" + module, function(response, status, xhr) {
if (status == "error") {
$("#actievenster").html('Er is een fout opgetreden, mogelijk heeft u geen internet verbinding of is er een probleem met onze site.');
}
var data = $('#werkgeheugen').html();
var data = data.split('<split>');
$("#actievenster").html(data[0]);
$("#actievenster").fadeIn();
$('#actievenster').fadeOut('slow', function() {
$("#werkgeheugen").load("module/handelaar.php?module=" + module, function(response, status, xhr) {
if (status == "error") {
$("#actievenster").html('Er is een fout opgetreden, mogelijk heeft u geen internet verbinding of is er een probleem met onze site.');
}
var data = $('#werkgeheugen').html();
var data = data.split('<split>');
$("#actievenster").html(data[0]);
$("#actievenster").fadeIn();
om mijn gegevens in het midden in te laden, nu gaat het fout bij het fotoalbum.
via chromium heb ik al gezien dat de load() wel werkt want ik krijg terug
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<div class="titel">Album weergave</div>
<div class="bericht">
<div class="box">
>> <a href="?pagina=&map=albumdoc">Albumdoc</a>
>> <a href="?pagina=&map=albumdoc/"></a>
<a href="?pagina=&map=albumdoc/&id=1">test album</a>
<div id="clear"></div>
<a href="?pagina=&map=albumdoc/&id=1&file=2.JPG">
<div class="placeholder_weergave">
<img src="albumdoc/testalbum/thumbs/klein_2.JPG" title="2" height="112">
</div>
</a>
<a href="?pagina=&map=albumdoc/&id=1&file=1.JPG">
<div class="placeholder_weergave">
<img src="albumdoc/testalbum/thumbs/klein_1.JPG" title="1" height="112">
</div>
</a>
<div class="clear"></div>
</div>
</div>
<div class="bericht">
<div class="box">
>> <a href="?pagina=&map=albumdoc">Albumdoc</a>
>> <a href="?pagina=&map=albumdoc/"></a>
<a href="?pagina=&map=albumdoc/&id=1">test album</a>
<div id="clear"></div>
<a href="?pagina=&map=albumdoc/&id=1&file=2.JPG">
<div class="placeholder_weergave">
<img src="albumdoc/testalbum/thumbs/klein_2.JPG" title="2" height="112">
</div>
</a>
<a href="?pagina=&map=albumdoc/&id=1&file=1.JPG">
<div class="placeholder_weergave">
<img src="albumdoc/testalbum/thumbs/klein_1.JPG" title="1" height="112">
</div>
</a>
<div class="clear"></div>
</div>
</div>
echter blijft #actievenster leeg ondanks andere paginas wel werken.
wat doe ik fout hier?
Gewijzigd op 02/07/2013 17:11:56 door Php knipper
Dit klopt volgens mij niet. Volgens mij moet dit zo zijn:
(nog eens nagelezen voor ik het indienden)
Wat zie je dan, klopt die alert?
Ik vind dat je daarmee niet goed ziet dat je met Ajax bezig bent.
(Dit is puur persoonlijk; ieder zijn gedacht ... ik zou het iedereen afraden. altijd.)
Jouw lijn 7 vind ik vreemd: var data = $('#werkgeheugen').html();
Binnen de functie waar de data geladen wordt, ga je de innerHTML lezen. Dat kan niet de bedoeling zijn.
Ik zou zo-iets doen
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<script>
var module = $(this).attr('id');
$('#actievenster').fadeOut('slow', function(e) {
// merk op: $(this) = $('#actievenster')
$.ajax({
url: "module/handelaar.php?module=" + module,
success: function(data) {
// data is de return van de server
var data_split = data.split('<split>');
$(this).html(data_split[0])
.fadeIn(); // chain linking
}
});
});
</script>
var module = $(this).attr('id');
$('#actievenster').fadeOut('slow', function(e) {
// merk op: $(this) = $('#actievenster')
$.ajax({
url: "module/handelaar.php?module=" + module,
success: function(data) {
// data is de return van de server
var data_split = data.split('<split>');
$(this).html(data_split[0])
.fadeIn(); // chain linking
}
});
});
</script>
Gewijzigd op 02/07/2013 17:26:25 door Kris Peeters
de $(this) op regel 11 verwijst niet meer naar #actievenster, je moet context: $(this) instellen in de opties van de ajax om dit voor elkaar te krijgen.
het alert geeft de html maar bij het fotoalbum is het alert leeg
@Kris Peters
ik dacht dat dat enkel gebruik werd bij het posten van formulieren.
@Wouter J
Inderdaat, nu werkt alles
Bedankt
Wouter J op 02/07/2013 17:36:15:
de $(this) op regel 11 verwijst niet meer naar #actievenster
O ja ... niet goed opgelet
Gewijzigd op 02/07/2013 18:08:20 door Kris Peeters
Ik gebruik nu piwik, nu gebruik ik deze jquery en dat zorgdt dat ik maar 1 pagina krijg (home.php). ik heb ook al geprobeert onder iedere pagina die wordt ingeladen via jquery de piwik code te zetten maar dit gaf ook maar 1 pagina en dat is weer home.php
Kent iemand piwik zo goed want voor mij is het nog iets nieuws, hoe kan ik dit oplossen?
*bump