¿Cómo puedo enviar un formulario usando JavaScript?
Tengo un formulario con id theForm
que tiene el siguiente div con un botón de enviar dentro:
<div id="placeOrder"
style="text-align: right; width: 100%; background-color: white;">
<button type="submit"
class='input_submit'
style="margin-right: 15px;"
onClick="placeOrder()">Place Order
</button>
</div>
Cuando se hace clic, se llama a la función placeOrder()
. La función cambia el HTML interno del div anterior para que sea "procesando ..." (por lo que el botón de enviar ya no está).
El código anterior funciona, pero ahora el problema es que no puedo enviar el formulario. Intenté poner esto en la placeOrder()
función:
document.theForm.submit();
Pero eso no funciona.
¿Cómo puedo obtener el formulario para enviar?
Aceptado
Establezca el name
atributo de su formulario en "theForm"
y su código funcionará.
Puedes usar...
document.getElementById('theForm').submit();
...pero no reemplaces el innerHTML
. Podrías ocultar el formulario y luego insertar un procesamiento... span
que aparecerá en su lugar.
var form = document.getElementById('theForm');
form.style.display = 'none';
var processing = document.createElement('span');
processing.appendChild(document.createTextNode('processing ...'));
form.parentNode.insertBefore(processing, form);