ugrás a tartalomhoz

Időzítés helyett gombnyomás ajax

agyergorcs · 2009. Dec. 9. (Sze), 18.32
Ü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:



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;				
			}                    
		}		
	}


és így van meghívva:

<input type="image" src="images/kosarba_tesz.png" height="25" width="54" onClick="this.src='images/kosarban_van.png'; tolt()" />