Вот написал ф-цию в ФФ работает на ура, но не знаю как вставить в твою:
function data_check(e, I, M) {
if (e.charCode && !e.ctrlKey) {
M = M.split('');
var BOOL = false;
for (i = 0; i < M.length; i++) {
if (M[i] == 'a' && ((e.charCode >= 65 && e.charCode <= 90) || (e.charCode >= 97 && e.charCode <= 122) || (e.charCode >= 1040 && e.charCode <= 1103))) { BOOL = true; break; }
else if (M[i] == 'z' && ((e.charCode >= 65 && e.charCode <= 90) || (e.charCode >= 97 && e.charCode <= 122))){ BOOL = true; break; }
else if (M[i] == 'я' && (e.charCode >= 1040 && e.charCode <= 1103)) { BOOL = true; break; }
else if (M[i] == '9' && (e.charCode >= 48 && e.charCode <= 57)) { BOOL = true; break; }
else if (M[i] == '*' && ((e.charCode >= 48 && e.charCode <= 57) || (e.charCode >= 65 && e.charCode <= 90) || (e.charCode >= 97 && e.charCode <= 122) || (e.charCode >= 1040 && e.charCode <= 1103))) { BOOL = true; break; }
else if (M[i].charCodeAt() == e.charCode) { BOOL = true; break; }
}
if (!BOOL) ShowHint(I, M);
return BOOL;
}
}