content van een div refreshen na klik op link
Is het mogelijk om na een klik op een menu een bepaalde div te refreshen (momenteel refresh ik heel de pagina, maar dan krijg ik een knipper effect)
Zo ja, hoe??
ajax.
en kan je me geen beetje op weg helpen??
Dit wil ik echter niet. Ik wil gewoon dat de code die erin staat opnieuw wordt uitgevoerd.
Hoe doe ik dit??
Gewijzigd op 01/01/1970 01:00:00 door jordy
waarschijnlijk een hele domme vraag nu, maar hoe koppel ik dat aan een link???
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<script type="text/javascript">
function refresh()
{
new Ajax.Updater('div-name', 'divje.php', { method: 'get' });
return false;
}
</script>
<a href="#" onclick="return refresh();">Ververs!</a>
function refresh()
{
new Ajax.Updater('div-name', 'divje.php', { method: 'get' });
return false;
}
</script>
<a href="#" onclick="return refresh();">Ververs!</a>
Gewijzigd op 01/01/1970 01:00:00 door Douwe
nu ben ik al een heel stuk verder.
Nog een vraagje:
Is het mogelijk om een variabele door te geven??
bv.: als ik divje.php?id=XX wil, hoe kan ik die XX daar in krijgen???
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<script type="text/javascript">
function refresh()
{
new Ajax.Updater('div-name', 'divje.php',
{
method: 'get',
parameters: 'id=XX&anderevar=anderewaarde'
}
);
return false;
}
</script>
function refresh()
{
new Ajax.Updater('div-name', 'divje.php',
{
method: 'get',
parameters: 'id=XX&anderevar=anderewaarde'
}
);
return false;
}
</script>
Gewijzigd op 01/01/1970 01:00:00 door Douwe
dat stukje had ik ook al tegen gekomen, maar hoe kan je die xx doorgeven???
Die kun je dan ophalen in divje.php met $_GET['id'] (id is de naam van de parameter).
onclick="return refresh();"
in de functie krijgen??
ik denk dat het zo is: onclick="return refresh(id);"
en dat ik de functie moet veranderen naar function refresh(id)
maar hoe kan ik de XX veranderen in dat id????
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<script type="text/javascript">
function refresh(id)
{
new Ajax.Updater('div-name', 'divje.php',
{
method: 'get',
parameters: 'id='+id
}
);
return false;
}
</script>
function refresh(id)
{
new Ajax.Updater('div-name', 'divje.php',
{
method: 'get',
parameters: 'id='+id
}
);
return false;
}
</script>
En dan inderdaad:
hopelijk werkt nu alles :p
Zo niet, horen we het wel :)
maar half.
Het probleem dat ik had met mijn menu is nu volledig opgelost, maar mijn div wordt niet opgevuld.
en ik krijg nergens een foutmelding :s
aanvulling:
dit is mijn menustructuur nu:
Code (php)
1
2
2
<a href="#" onclick="return refresh('5');">Powerpoints</a>
<a href="#" onclick="return refresh('5_13');"> Controls</a>
<a href="#" onclick="return refresh('5_13');"> Controls</a>
en dit is mijn stukje javascript:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<script type="text/javascript">
function refresh(id)
{
alert("test");
new Ajax.Updater('mainContent', 'maincontent.php',
{
method: 'get',
parameters: 'id='+id
}
);
return false;
}
</script>
function refresh(id)
{
alert("test");
new Ajax.Updater('mainContent', 'maincontent.php',
{
method: 'get',
parameters: 'id='+id
}
);
return false;
}
</script>
ik heb geprobeert met een alert te kijken of ik wel tot in het scriptje geraak, maar ik krijg nooit de alert te zien dus ...
Gewijzigd op 01/01/1970 01:00:00 door jordy
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script type="text/javascript">
function refresh(id) {
new Ajax.Request('maincontent.php', {
method: "GET",
parameters: 'id='+id,
onComplete: function (e) {
if(e.responseText) {
$("mainContent").innerHTML = e.responseText;
} else {
refresh('id-van-error-pagina');
}
}
});
}
</script>
function refresh(id) {
new Ajax.Request('maincontent.php', {
method: "GET",
parameters: 'id='+id,
onComplete: function (e) {
if(e.responseText) {
$("mainContent").innerHTML = e.responseText;
} else {
refresh('id-van-error-pagina');
}
}
});
}
</script>
ik heb hetzelfde probleem. Het menu wordt perfect weergegeven, maar de div's worden niet geladen.
Wat zegt firebug?
hoe laat ik dat iets zeggen???