Kod
function TylkoCyfry(e,decReq)
{
var key = e.keyCode||e.which;
var obj = e.srcElement||e.target;
var isNum = ((key>47 && key<58) || key==27 || key==8) ? true:false;
var dotOK = (key==46 && decReq && obj.value.indexOf(".")<0) ? true:false;
return (isNum || dotOK);
}
{
var key = e.keyCode||e.which;
var obj = e.srcElement||e.target;
var isNum = ((key>47 && key<58) || key==27 || key==8) ? true:false;
var dotOK = (key==46 && decReq && obj.value.indexOf(".")<0) ? true:false;
return (isNum || dotOK);
}
Mam problem z jej wywołaniem tylko w jednym przypadku. Strona główna zawiera ramkę wewnętrzną (IFRAME). W dokumencie wyświetlanym w ramce jest link otwierający nowe okienko. W tym okienku ładuję formularz i dla jednego z pól ustawiam:
<input type="text" onkeypress="return TylkoCyfry(event,1)" ...>
Przy próbie wprowadzenia jakiegokolwiek znaku do tego pola debugger javascriptu w przeglądarce Firefox zaczyna mi wrzeszczeć: "Błąd: TylkoCyfry is not defined.".
Jeśli takie pole umieszczę nie w okienku, tylko w głównym oknie, to wszystko działa jak należy!
Sprawdziłem, że:
1. dla okienka plik z funkcjami javascript jest właściwie podpięty,
2. nie ma znaczenia, czy okno główne "zna" tę funkcję (próbowałem ją skopiować do kodu javascript przypisanego do głównego okna).
Jakieś sugestie? Bo powoli wymiękam...
Pozdrawiam,
K