con*_*t01 10 jquery loading form-submit
我正在尝试显示一个简单的微调器gif同时正在执行提交(这需要一点,因为我必须通过Web服务与提供者建立一些通信).
所以,我有这个:
$('#gds_form').submit(function() {
var pass = true;
//some validations
if(pass == false){
return false;
}
$("body").prepend('<div class="ui-widget-overlay" style="z-index: 1001;"></div>');
$("body").prepend("<div id ='PleaseWait'><img src='/images/spinner.gif'/></div>");
return true;
});
Run Code Online (Sandbox Code Playgroud)
问题是,.gif没有显示任何动画,就像它被冻结了一样.
为什么?
还有另一种方法可以实现这一点(注意我没有使用AJAX,我不想这样做)?
谢谢.
Jam*_*son 14
使用jQuery submit函数,您可以指定加载图像,如下所示:
$('#form').submit(function() {
$('#wait').show();
$.post('/somepage.htm', function() {
$('#wait').hide();
});
return false;
});
Run Code Online (Sandbox Code Playgroud)
Cha*_*lle 11
您是否尝试将图像加载到文档准备就绪,只隐藏它.然后在你的功能中显示它?这样,图像已经加载并旋转.
$(document).ready(function() {
$("body").prepend('<div id="overlay" class="ui-widget-overlay" style="z-index: 1001; display: none;"></div>');
$("body").prepend("<div id='PleaseWait' style='display: none;'><img src='/images/spinner.gif'/></div>");
});
$('#gds_form').submit(function() {
var pass = true;
//some validations
if(pass == false){
return false;
}
$("#overlay, #PleaseWait").show();
return true;
});
Run Code Online (Sandbox Code Playgroud)