Evo napisao sam na brzinu f-ju za validaciju indeksa u tom formatu, pa ti probaj:
Code:
function validacija_indeksa(br_indeksa) {
if (br_indeksa.indexOf('/') == -1) {
return false;
}
br_god = br_indeksa.split('/');
if (br_god[0].length != 2 || br_god[1].length != 4) {
return false;
}
if (br_god[0].charAt(0) < '0' || br_god[0].charAt(0) > '9' || br_god[0].charAt(1) < '0' || br_god[0].charAt(1) > '9') {
return false;
}
godina = parseInt(br_god[1]);
if (godina == 'NaN') {
return false;
}
else {
var dt = new Date();
if (godina < 1979 || godina > dt.getFullYear()) {
return false;
}
}
return true;
}
A mogao bi da je testiraš npr. ovako:
Code:
function provera() {
var br_indeksa = document.getElementById('indeks').value;
if (!validacija_indeksa(br_indeksa)) {
alert('Uneti broj indeksa nije validan.');
}
else {
alert('Ok');
}
}
Samo naravno pre toga napravi neko tekstualno polje sa id-em
indeks i neko dugme koje ima
onclick = "provera();".
Elem, kod mene na faksu format indeksa je ddd/dd (npr. 100/09).
E aj' sad ti probaj sam ovo za prosečnu ocenu studenta.
P.S. Ova f-ja je verovatno mogla da se zameni sa nekim regularnim izrazom, samo ja ne znam kako bi se onda godina ograničavala na taj opseg od 1979 do 2009, odnosno, do trenutne godine.
P.P.S. Ako ovo radiš samo zbog nekog domaćeg zadatka ili seminarskog, nebitno, onda ok, ali u realnim uslovima, nemoj nikad da se oslanjaš na validaciju na klijentskoj strani.
[Ovu poruku je menjao Nikola Poša dana 02.04.2009. u 11:23 GMT+1]