Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 8 odgovora
  • 4.680 pregleda

Najnovija ↓

javascript: disable 13.08.2008. u 00:29 · pre 221 mesec #1
imam funkciju koja proverava da li je validan username
Code:
function checkuser(fld) {
    var error = "";
    var greska=0;
    var illegalChars = /\W/; // allow letters, numbers, and underscores
 
    if (fld.value == "") {
        fld.style.background = 'Yellow'; 
        error = "You didn't enter a username.\n";
        greska=1;
        //alert(error);
    } else if ((fld.value.length < 5) || (fld.value.length > 15)) {
        fld.style.background = 'Yellow'; 
        error = "The username is the wrong length.\n";
        greska=1;
        //alert(error);
    } else if (illegalChars.test(fld.value)) {
        fld.style.background = 'Yellow'; 
        error = "The username contains illegal characters.\n";
        greska=1;
        //alert(error);
    } else {
        fld.style.background = 'White';
    }
    if(greska) alert(error);
    return error;
}


kako da blokiram submit ako validacija ne prodje?
Re: javascript: disable 15.08.2008. u 18:49 · pre 221 mesec #2
to se obicno radi ovako:
Code:

<form ... onsubmit="return validate(this)">
  ...
</form>

Code:

function validate(frm)
{
   var valid = false;

   // ovde ubaci proveru koja ce da podesi valid = true ukoliko je sve validno
  
  return valid; 
}
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: javascript: disable 15.08.2008. u 20:03 · pre 221 mesec
izmenjeno 1 put, poslednji put raynor 16.08.2008. u 12:03
  1. raynor16.08.2008. u 12:03zapis iz teksta poruke
#3
A mozhesh i ovako neshto... Prvo, to dugme u formi postavi da bude tipa "button", a ne "submit", a unutar linije koda za to dugme napishi:
Code:
onClick = "checkuser(fld);"

A zatim u skriptu, iza poslednjeg if-a dodaj jedan else i u njemu samo napishi:
Code:
document.imeForme.submit();

Nadam se da razumesh na shta sam mislio...
Re: javascript: disable 15.08.2008. u 20:33 · pre 221 mesec #4
a najbolje bi bilo da validaciju radis sa serverske strane. inace, js u browseru moze da se iskljuci u dva klika, pa si dzabe krecio...
Re: javascript: disable 15.08.2008. u 22:14 · pre 221 mesec #5
@japan: recimo da imas formu od 20-30 polja (ja sam se susretao i sa veim brojem polja) gde imas izmedju ostalog i upload fajlova, popuins ti tu formu (za sta ti treba bar 2 min) i kliknes submit, cekas par minuta da se fajlovi uploaduju (u zavisnosti od konekcije i velicine+broja fajlova) i onda ti server kaze da ti se (recimo) sifre ne podudaraju (ono standardno confirm password), pa onda izmenis to i opet cekas da se uploaduje i onda ti mozda javi neku drugu gresku... naravno ovo ponavljanje se moze resiti pomocu malo bolje backend skripte (koja moze da kesira uploadovane fajlove i da izgenerise listu svih gresaka), ali da se validacija vrsila i na klijentu (javascript) onda bi sve bilo mnogo bolje.

zakljucak: i client side i server side validacije, uvek! (ali naravno client-side ne bi trebalo da zavisi od js-a, recimo primer koji je raynor naveo nece da radi ukoliko je js disableovan, tj forma nece nikad biti poslana, dok je primer koji sam ja dao nezavistan od js-a i ukoliko je js iskljucen jednostavno nece biti client validacije i samo ce server odraditi validaciju)
Potpis
rafforum.rs - Forum Računarskog Fakulteta
Re: javascript: disable 16.08.2008. u 13:40 · pre 221 mesec #7
slazem se. mozda se nisam lepo izrazio, ali moja poenta je bila upravo to.
Re: javascript: disable 16.08.2008. u 19:27 · pre 221 mesec #8
hvala.
dali ste mi ideju sa ovim server-side. meni treba samo da u korisnickom imenu ne bude razmaka niti svega sto nije slovo ni cifra. u tom slucaju imam ideju da ne zabranjujem submit kao sto sam ranije mislio, nego ako unese razmak ili neki zabranjen karakter da mu dam alert, pa ako ne poslusa onda neka ga php stopira. sta mislite?
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme