He utilizado el siguiente ejemplo para permitir que varios botones para enviar datos de formulario en serie pero con diferentes opciones, por ejemplo, Guarde y guarde & Cerrar. Aunque estoy usando jQuery para publicar datos serializados, toda la página se vuelve a cargar porque estoy enviando los datos de la respuesta posterior ajax a "document.body".
<form id="myform">
<button id="button1" type="button" onclick="submitButton(true,false)" name="save" value="save">Save</button>
<button id="button1" type="button" onclick="submitButton(true,true)" name="close" value="close">Save and Close</button>
</form>
function submitButton(save,close) {
$.ajax({url:'page.asp', data:''+$('#myform').serialize()+'&save='+save+'&close='+close+'',
type: 'post',
success: function(data){$(document.body).html(data);}
});
}
No necesita un elemento de formulario, ya que puede usarlo con cualquier elemento que tenga una identificación única.
¿Qué pasa con 'myFormElement. submit() '? O mejor aún, cuando el usuario hace clic en el botón Enviar, * simplemente deje que el navegador envíe el formulario *, no se necesita JavaScript. –
Tenía la esperanza de poder hacer esto sin un formulario en el DOM (de la misma manera que puedo hacer una publicación fuera de banda sin un formulario en el DOM). Pero supongo que no. – UpTheCreek
¿En realidad no tiene un elemento '