El formulario jquery se envía antes de jquery dialog ui
Frecuentes
Visto 55 equipos
0
tengo este complemento openid pero cuando hago clic en aol se abre el cuadro de diálogo y en poco tiempo se cierra automáticamente y se envía el formulario. quiero que se detenga en el momento en que se abra el cuadro de diálogo y que el formulario se envíe solo cuando cierre el cuadro de diálogo
Por favor, ayúdame
(function($){
$.fn.openid = function() {
$('input').click(function(e){
var provider = $(this).attr('class');
if (provider == 'aol') {
$("#dialog").dialog();
}
else{
var provider_url = $(this).attr('id'); //get id
var myinput = $('<input type="hidden" name="provider_url"/>').val(provider_url);
}
$('form').append(myinput);
$('form').submit();
})
}
})(jQuery);
incluso e.stopPropogation(); para el controlador de eventos de clic no funciona, incluso si pongo form.submit (return false) en if loop, deshabilite el formulario por completo para else loop también
2 Respuestas
0
Has intentado agregar
e.preventDefault();
al comienzo de su función de clic?
contestado el 02 de mayo de 12 a las 19:05
0
Creo que el problema está ocurriendo gracias a esta paz de código:
$('form').submit();
La paz del código se asienta por sí sola y, por lo tanto, se ejecutará cada vez que se haga clic en $('input'). Lo que debe intentar es poner esa paz de código en otra función de clic de jQuery o ponerla dentro de una declaración if of else.
$('.buttonX').click(function()
{
$('form').submit();
});
contestado el 02 de mayo de 12 a las 19:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas php jquery jquery-ui or haz tu propia pregunta.