Error "Enviar no es una función" en JavaScript
¿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 :(
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 btnSubmit
y su llamada funcionará mágicamente.
Cuando le asigna un nombre al botón enviar, anula la submit()
función en el formulario.
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.
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);
}