我有一个简单的问题。我使用AJAX请求将表单中的数据发布到我的数据库。我在AJAX请求中使用 beforeSend 和完整命令在加载GIF中编码。
<script>
$(function(){
//email the link
$("##emailTicket#get_active_tickets.ticket_id#").submit(function(){
// prevent native form submission here
$.ajax({
type: "POST",
data: $('##emailTicket#get_active_tickets.ticket_id#').serialize(),
url: "actionpages/email_dashboard_ticket.cfm",
beforeSend: function(){
$('.loader').show()
},
complete: function(){
$('.loader').hide();
},
success: function() {
$("##emailTicketResponse#get_active_tickets.ticket_id#").html("");
$("##emailTicketResponse#get_active_tickets.ticket_id#").append( "Ticket successfully sent." );
}
});
return false;
});
});
</script>
所有内容似乎都正常工作,但加载GIF仅闪烁一瞬间,因为请求并不需要很长时间才能完成。有时,如果单击提交按钮实际上做了任何事情,您甚至无法看到它并且用户会感到困惑。
有没有办法延迟完成&#39;功能的一部分,以便动画GIF在屏幕上出现的时间更长?
complete: function(){
$('.loader').hide();
},
答案 0 :(得分:0)
我能够通过在我的函数中修改完整代码并在milleseconds中添加延迟来实现此目的:
complete: function(){
$('.loader').hide(3000);
},