Időzítés helyett gombnyomás ajax
Üdv mindenki!
A következő problémával szembesültem, miután a tárhelyszolgáltató felhívta a figyelmemet, hogy a készülő oldal másodpercenként többször újratölti magát. Pontosabban arról van szó, hogy amikor egy terméket pakolok be a kosárba, összegzésként a lapon megjelenik az összes mennyiség és annak az ára. Ez az összegzés ajaxal van megoldva és az a gond, hogy állandóan frissíti magát és nem csak akkor amikor rányomnak a kosárba tesz gombra. Egy ideig boldogultam viszont újabb probléma jött az alakítás közben. Nagyából már jól működik csak egy apróság lehet amit nem veszek észre. Amikor először kattintok a kosárba tesz gombra "semmi" nem történik, vagyis csak nem jeleníti meg, hogy benne van de amúgy beletette, a többi nyomkodás már látszik csak az első nem amíg nem frissítem az oldalt.
jelenleg így néz ki a dolog:és így van meghívva:
■ A következő problémával szembesültem, miután a tárhelyszolgáltató felhívta a figyelmemet, hogy a készülő oldal másodpercenként többször újratölti magát. Pontosabban arról van szó, hogy amikor egy terméket pakolok be a kosárba, összegzésként a lapon megjelenik az összes mennyiség és annak az ára. Ez az összegzés ajaxal van megoldva és az a gond, hogy állandóan frissíti magát és nem csak akkor amikor rányomnak a kosárba tesz gombra. Egy ideig boldogultam viszont újabb probléma jött az alakítás közben. Nagyából már jól működik csak egy apróság lehet amit nem veszek észre. Amikor először kattintok a kosárba tesz gombra "semmi" nem történik, vagyis csak nem jeleníti meg, hogy benne van de amúgy beletette, a többi nyomkodás már látszik csak az első nem amíg nem frissítem az oldalt.
jelenleg így néz ki a dolog:
hely="term_db" // Hova töltse
mit="kosar.php" // Melyik fájlt
function tolt() {
var url = mit+'?'+Math.random();
// Mozilla és mások
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
}
else
if (window.ActiveXObject) {
// Internet Explorer 5,6
req = new ActiveXObject("Microsoft.XMLHTTP");
}
req.open("GET", url, true);
req.onreadystatechange = processChoices;
req.send(null);
return false;
}
function processChoices() {
// Várj míg kérés ok
if (req.readyState == 4) {
if (req.status == 200) {
vissza=req.responseText;
document.getElementById(hely).innerHTML=vissza;
}
}
}
<input type="image" src="images/kosarba_tesz.png" height="25" width="54" onClick="this.src='images/kosarban_van.png'; tolt()" />