我有这个openid插件但是当我点击aol时,对话框会打开,并且会立即自动关闭并提交表单。我希望它在对话框打开的时候停止,只有当我关闭对话框时才会提交shud
请帮帮我
(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);
甚至e.stopPropogation();到click事件处理程序不起作用 即使我在if循环中放入form.submit(return false),它也完全禁用了form for else循环
答案 0 :(得分:0)
您是否尝试过添加
e.preventDefault();
在点击功能的开头?
答案 1 :(得分:0)
我认为问题正在发生,这要归功于代码的和平:
$('form').submit();
代码的和平独立,因此只要点击$('input')就会执行。你应该尝试的是将代码的平衡放在另一个jQuery单击函数中,或者将它放在if of else语句中。
$('.buttonX').click(function()
{
$('form').submit();
});