A ver si me podéis ayudar.
He creado un fichero onblur.php con el siguiente código:
<!DOCTYPE html>
<html>
<body>
<?php echo "<p>".$_GET['texto']."</p>"; ?>
<form action="onblur.php">
Ponga un texto en minúsculas: <input type="text" id="texto" name="texto" onblur="myFunction();">
<button type="submit">Ok</button>
</form>
<script>
function myFunction() {
var x = document.getElementById("texto");
x.value = x.value.toUpperCase();
}
</script>
</body>
</html>
El problema es que no siempre me funciona. Es un ejemplo muy sencillo que al salir del campo de texto lo convierte en mayúsculas. Si en lugar de salir con TAB pulsamos Intro, no funciona.
Supongo que el problema está en que el DOM se destruye antes de ejecutarse el script, pero no estoy seguro.
La función que quiero ejecutar es mucho más compleja y modifica dos campos ocultos localizados con getElementById que luego son devueltos por el formulario.
Supongo que es una tontería, pero de verdad que me estoy volviendo loco.