Autor Zpráva
10_Opicka_10
Profil *
Ahoj, můžu někoho poprosit, jestli by mi nějak nepomohl udělat ajaxový auto-odesílání? Například uživatel odklikne (onblur) z políčka a ajax se aktivuje na soubor, který například zkontroluje údaje? Děkuji a prosím, mohly by jste mi to vysvětlit jako "děťátku ve školce"? Děkuji..!!
Str4wberry
Profil
Viz Univerzální funkce pro AJAX
10_Opicka_10
Profil *
Takže?
       
...
...
...
var url = "./overeni.php?login="+ login + "?heslo=" + heslo;
 if (window.ActiveXObject)
        {
          httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
        }
        else
        {
          httpRequest = new XMLHttpRequest();
        }
        httpRequest.open("GET", url, true);
        httpRequest.onreadystatechange= function () {processRequest(); } ;
        httpRequest.send(null);
      }
Chamurappi
Profil
Reaguji na 10_Opicku_10:
Na posílání údajů si napíšeme kratičkou funkci:
function nacti(url, callback)
{
  var xhr = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
  xhr.open("GET", url, true);
  xhr.onreadystatechange = function()
  {
    if(xhr.readyState == 4)
      callback(xhr.responseText);
  };
  xhr.send("");
}

Příklad použití:
function kontrola(formular)
{
  nacti("overeni.php?login=" + encodeURIComponent(formular.login.value) + "&heslo=" + encodeURIComponent(formular.heslo.value), function(odpoved)
  {
    alert("Server si o zadaných údajích myslí: " + odpoved);
  });
}

Při onblur na heslu pak můžeš zavolat kontrola(this.form), pokud to chceš zrovna … takhle.
Uvedené kódy jsem netestoval. Kdyby to nešlo, tak prosím o odkaz na živou ukázku problému.
10_Opicka_10
Profil *
Chamurappi:
Jen ještě při té kontrole má být v souboru, který vše kontroluje funkce odpoved? Děkuji.
Chamurappi
Profil
Reaguji na 10_Opicku_10:
Ne. Soubor, který vše kontroluje, vrátí řetězec a tenhle řetězec pak přijme bezejmenná JS funkce (jejímž argumentem je proměnná odpoved).
10_Opicka_10
Profil *
Chamurappi:
Děkuji Ti, velice moc jsi mi pomohl! Ještě jednou DĚKUJI! :-)

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0