我试图做到这一点:
防止一个提交按钮提交表单
淡出的元件出
然后提交表单
但是我坚持用动画的无限循环! 为什么??
HTML
<form id="postitron" method="post" action="/postitron/answertron.php">
<input type="hidden" name="acces" value"yes">
<input id="submit" type="submit" value="DOIT">
</form>
JavaScript的
$('#postitron').submit(function(e){
e.preventDefault();
$('#page').animate({opacity:0},400, function(){
$('#postitron').submit();
});
});
PS-我也试过了.one()
方法,而不是.submit()
但它防止了提交方法从#postitron一次动画的完整:(执行
这是因为你在你的绑定事件SUBMIT
,和你的.animate callback function
是SUBMIT
“荷兰国际集团的形式......导致无限循环。
尝试这个 :
相反,结合事件.submit
的form
,结合.click
事件submit
按钮。
$('#submit').click(function(e){
e.preventDefault();
$('#page').animate({opacity:0},400, function(){
$('#postitron').submit();
});
});
裸记住我没有测试这一点。
submit()
调用您的自定义约束submit
功能,这又打电话给你submit
再等等。
尝试使用DOM的提交:
$('#postitron')[0].submit()
你可以预先定义的功能,并且在它内部解除绑定提交,然后重新提交。 这是一个黑客,但它可能工作。
或许你检查它的隐藏的烦躁,然后重新提交这样的:
var hidden = false;
$('#postitron').submit(function(e){
if ( !hidden ) {
e.preventDefault();
$('#page').animate({opacity:0},400, function(){
hidden = true;
$('#postitron').submit();
});
}
});