Error "Enviar no es una función" en JavaScript

Resuelto Jin Yong asked hace 15 años • 19 respuestas

¿Alguien puede decirme qué está mal con este código? Intenté enviar un formulario con JavaScript, pero aparece el error ".submit no es una función". Consulte a continuación para obtener más detalles del código:

<form action="product.php" method="get" name="frmProduct" id="frmProduct" enctype="multipart/form-data">

<input onclick="submitAction()" id="submit_value" type="button" name="submit_value" value="">

</form>

<script type="text/javascript">
    function submitAction()
    {
        document.frmProduct.submit();
    }
</script>

También probé esto:

<script type="text/javascript">
    function submitAction()
    {
        document.forms["frmProduct"].submit();
    }
</script>

Ambos me muestran el mismo error :(

Jin Yong avatar May 07 '09 12:05 Jin Yong
Aceptado

enviar no es una función

significa que usted nombró su botón de enviar o algún otro elemento submit. Cambie el nombre del botón a btnSubmity su llamada funcionará mágicamente.

Cuando le asigna un nombre al botón enviar, anula la submit()función en el formulario.

epascarello avatar May 07 '2009 11:05 epascarello

Asegúrese de que no haya otro formulario con el mismo nombre y asegúrese de que no haya ningún name="submit"o id="submit"en el formulario.

gopeca avatar May 31 '2014 09:05 gopeca

Si no tiene oportunidad de cambiar, name="submit"también puede enviar el formulario de esta manera:

function submitForm(form) {
    const submitFormFunction = Object.getPrototypeOf(form).submit;
    submitFormFunction.call(form);
}
Terbiy avatar Jan 25 '2017 08:01 Terbiy