Bom dia a todos.
Tenho uma funcao em javascript permite somente a inclusao de numeros e virgula em um Textbox, essa funcao retorna true ou false de acordo com o que é digitado e funciona perfeitamente. Já nesse mesmo Textbox o onchange em conjunto com o onkeypress
nao é disparado. Verifiquei q acontece porque a funcao no onkeypress retorna false (alterei a funcao para sempre retornar true e o onchange dispara).
E isso acontece somente no IE8 (nao testei em outros IE's), FF, Chrome, Opera e Safari funciona sem problemas.
Se alguem tiver uma luz, agradeco, pois ja pesquisei bastante no Google, etc e nada.
Abraco a todos.
P.s.: Observei agora q acontece tb pq minha funcao tem setTimeout (sem ele mesmo retornando false funciona ok). Segue o codigo para facilitar:
function eDecimalAuto(e, obj) {
objeto = obj;
setTimeout("objeto.value = objeto.value.replace('.', ',');", 1);
var whichCode = e.keyCode != null ? e.keyCode : e.which;
if ((whichCode == 0) || (whichCode == 8))
return true;
keychar = String.fromCharCode(whichCode);
if (keychar == '.' || keychar == ',') {
if (obj.value == '')
setTimeout("objeto.value = '0' + objeto.value;", 1);
else if (obj.value.indexOf(',') != -1)
return false;
return true;
}