function tylkoCyfry(zdarzenie) {
    zdarzenie = (zdarzenie) ? zdarzenie : event;
    var kodZnaku = (zdarzenie.charCode) ? zdarzenie.charCode : ((zdarzenie.keyCode) ? zdarzenie.keyCode : 
        ((zdarzenie.which) ? zdarzenie.which : 0));
    if (kodZnaku > 31 && (kodZnaku < 48 || kodZnaku > 57)) {
        alert("W tym polu mona wpisywa wycznie cyfry.");
        return false;
    }
    return true;
}

...

<input type="text" ... onkeypress="return tylkoCyfry(event)">

----------

function tylkoLitery(zdarzenie) {
    zdarzenie = (zdarzenie) ? zdarzenie : event;
    var kodZnaku = (zdarzenie.charCode) ? zdarzenie.charCode : ((zdarzenie.keyCode) ? zdarzenie.keyCode : 
        ((zdarzenie.which) ? zdarzenie.which : 0));
    if (kodZnaku > 31 && (kodZnaku < 65 || kodZnaku > 90) && 
        (kodZnaku < 97 || kodZnaku > 122)) {
        alert("W tym polu mona wpisywa wycznie litery.");
        return false;
    }
    return true;
}

----------

function tylkoTiN(zdarzenie) {
    zdarzenie = (zdarzenie) ? zdarzenie : event;
    var kodZnaku = (zdarzenie.charCode) ? zdarzenie.charCode : ((zdarzenie.keyCode) ? zdarzenie.keyCode : 
        ((zdarzenie.which) ? zdarzenie.which : 0));
    if (kodZnaku > 31 && kodZnaku != 78 && kodZnaku != 84 && 
        kodZnaku != 110 && kodZnaku != 116) {
        alert("Mona wpisywa wycznie \"T\" or \"N\" only.");
        return false;
    }
    return true;
}

...

Podpis zoony: <input type="text" name="podpis" size="2" maxlength="1" 
onkeypress="return tylkoTiN(event)" /> (T/N)
