var name, pass, ajax;
function waliduj() {
name = $(".name").val();
pass = $(".pass").val();
var reg = /^[a-zA-Z0-9 ]+$/;
if (name.length > 0) {
if (!reg.test(name)) {
alert('Nazwa użytkownika zawiera niedozwolone znaki!');
return false;
}
}else{
alert('Podaj nazwę użytkownika!');
return false;
}
if (pass.length > 0) {
if (!reg.test(pass)) {
alert('Hasło zawiera niedozwolone znaki!');
return false;
}
}else{
alert('Podaj hasło!');
return false;
}
ajax = name;
ajax = pass;
return true;
}
function sendForm() {
if (waliduj() == true) {
ajax = $.ajax({
type: "POST",
url: "form.php",
data: ({name : this.name, password : this.pass}),
dataType: "html",
success: function (msg) {
if (msg.indexOf('ok') >= 0) {
$("#form").hide();
$("#response").text('Zostałeś pomyślnie zalogowany!');
}else{
$("#response").text('Niepoprawny login/hasło');
}
}
});
}
}
$(document).ready(
function() {
}
);
z gory uprzedzam przyklad zaczerpniety z forum. Moje pytanie jest takie, jak zinterpretować dane wyslane przez ajaxa w pliku form.php ? i jak sie je zwraca.
Znalazłem coś innego, prostszego niestety nie działa. Wszystko wydaje się być poprawnie napisane.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="pl-PL"> <title>Strona z dodawaniem i usuwaniem elementów formularza
</title> <meta http-equiv="Content-Type" content="text/html; charset=utf8" /> <script language="javascript" type="text/javascript" src="prototype.js"></script> <script language="javascript" type="text/javascript" src="check_login.js"></script> <form method="post" action="java script:checkLogin();"> <input type="text" id="login" name="login" /> <input type="submit" name="Submit" id="checkButton" value="Sprawdź dostępość" />
plik check_login.js
function checkLogin(){
var login = document.getElementById("login").value;
var errorResult = document.getElementById("errorResult");
if(login==''){
errorResult.innerHTML = 'Błąd: Nie podano <b>Loginu</b>';
}
var myAjax = new Ajax.Request(
'check_login.php',
{
method: 'post',
parameters: "login="+login;
onComplete: showResponse
});
}
function showResponse(text){
var errorResult = document.getElementById("errorResult");
registerResult.innerHTML = text.responseText;
}
na tym bym się zatrzymał bo dalej kod nie jest wykonywany. Gdy wartość pola jest pusta powinien pokazać się błąd, że nic nie jest wpisane niestety tak się nie dzieje, dlaczego ? Mówiąc prościej funkcja checkLogin się nie wykonuje.
Ten post edytował attimo 6.03.2010, 10:54:31