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:
  1. hely="term_db" // Hova töltse  
  2.     mit="kosar.php" // Melyik fájlt   
  3.       
  4.     function tolt() {  
  5.         var url = mit+'?'+Math.random();  
  6.         // Mozilla és mások  
  7.         if (window.XMLHttpRequest) {  
  8.             req = new XMLHttpRequest();  
  9.         }  
  10.         else  
  11.             if (window.ActiveXObject) {  
  12.             // Internet Explorer 5,6  
  13.                 req = new ActiveXObject("Microsoft.XMLHTTP");  
  14.             }         
  15.         req.open("GET", url, true);  
  16.         req.onreadystatechange = processChoices;  
  17.         req.send(null);  
  18.         return false;  
  19.     }  
  20.       
  21.     function processChoices() {  
  22.     // Várj míg kérés ok  
  23.         if (req.readyState == 4) {  
  24.               
  25.             if (req.status == 200) {  
  26.                 vissza=req.responseText;  
  27.                 document.getElementById(hely).innerHTML=vissza;               
  28.             }                      
  29.         }         
  30.     }  
és így van meghívva:
  1. <input type="image" src="images/kosarba_tesz.png" height="25" width="54" onClick="this.src='images/kosarban_van.png'; tolt()" />