Saltar al contenido

javascript onsubmit no funciona

Solución:

Al adjuntar el controlador de eventos al elemento de formulario, el alcance del controlador de eventos es el formulario y no la ventana

<form enctype="multipart/form-data" method="post" onsubmit="return upload(this);">

<script>
    function upload(scope) {
        console.log(scope); // The passed scope from the event handler is
    }                       // the form, and not window
</script>

Como elementos de entrada dentro de un formulario se adjuntan como propiedades al objeto del formulario, donde el nombre es la clave, llamando upload() en el controlador de eventos, donde el alcance es el formulario, sería igual a llamar form.upload(), pero el formulario ya tiene un elemento con ese nombre, así que form.upload es el botón de carga, no el upload() función en el ámbito global.

Para resolverlo, cambie el nombre de la función o el elemento

<html>
<head>
    <script>
        function upload(){
                alert("I am an alert box!");
        }
     </script>
</head>
<body>
    <form enctype="multipart/form-data" method="post" onsubmit="return upload();">
    <input type="file" name="file">
    <input type="submit" name="upload2" value="Datei hochladen">
    </form>
</body>
</html>

VIOLÍN

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *