Código :
if (h1.editable) {
inputTextListener = new Object();
inputTextListener.focusOut = function() {
sum1 = parseFloat(h1.text);
var partir = h1.text.split('.');
if (partir.length == 1) {
trace("Número entero");
}
else if (partir.length == 2 && partir[0] != "" && partir[1] != "") {
trace("Número decimal");
}
else {
mialerta = new Alerta();
mialerta.onCierra = function() {
if (mialerta.getRespuesta()) {
trace("Apretaste aceptar");
}
else {
trace("No apretaste aceptar");
}
};
mialerta.setInformacion("El dato intoducido es erróneo\nACEPTAR");
}
if (isNaN(sum1)) {
mialerta = new Alerta();
mialerta.onCierra = function() {
if (mialerta.getRespuesta()) {
trace("Apretaste aceptar");
}
else {
trace("No apretaste aceptar");
}
};
mialerta.setInformacion("Ha escrito más de una coma decimal o bien ha dejado el dato en blanco\nACEPTAR");
}
};
h1.addEventListener("focusOut", inputTextListener);
}
else {
sum1 = 0;
alto1 = 0;
}
Con este codigo consigo que lo que el usuario introduzca sea un número entero o decimal y en caso de que sea NaN(espacios en blanco,...) nos de un aviso.
Mi pregunta es ¿cómo puedo hacer que una vez que sale la alerta y el usuario la acepta o la cierra el foco se quede en ese mismo textinput hasta que corrija el fallo.
Teniendo en cuenta que el código debe sufrir las menos alteraciones posibles
Gracias
[moderador]Editado para agregar etiquetas code, para mejor lectura[/moderador]
