附上ajax加载程序图像

时间:2012-01-26 07:06:25

标签: jquery ajax post

这可能很简单,但对于像我这样不那么丑陋的家伙来说,这很难。被diggin'一个源代码,我想出了一个ajax脚本。我很困惑在哪里或如何在这里添加ajax加载器图像:

$.post(webroot+'quickLookUp.php',{'format':'json','function':'Lookup','domain':$('.domain_name').val(),'tld':'.'+$('.domain_name_ext').val()},
function(data)
{
  data = $.parseJSON(data);
  if(data[0].result != 'Available')
  // script here
  else
  // script here
});

2 个答案:

答案 0 :(得分:1)

showSpinner();
$.post(webroot+'quickLookUp.php', {'format':'json','function':'Lookup','domain':$('.domain_name').val(),'tld':'.'+$('.domain_name_ext').val()},
function(data)
{
    hideSpinner();
    ...
});

showSpinnerhideSpinner函数将分别显示和隐藏AJAX进度图像。

如果你想对当前页面上的所有AJAX请求执行此操作,可以使用$.ajaxSetup

$.ajaxSetup({
    beforeSend: showSpinner,
    complete: hideSpinner
});

答案 1 :(得分:1)

/*SHOW Loading Icon Here*/

$.post(webroot+'quickLookUp.php',{'format':'json','function':'Lookup','domain':$('.domain_name').val(),'tld':'.'+$('.domain_name_ext').val()},
function(data)
{

  /*HIDE Loading Icon Here*/

  data = $.parseJSON(data);
  if(data[0].result != 'Available')
  // script here
  else
  // script here
});

您只需在进行调用之前显示图像,并将其隐藏在AJAX请求的回调函数中。

您还可以在jQuery中使用全局AJAX事件,以便在发送AJAX请求时始终显示加载图像(并在请求完成时隐藏它):

$.ajaxStart(function () {
    /*SHOW Loading Icon*/
}).ajaxComplete(function () {
    /*HIDE Loading Icon*/
}).post(...);

以下是jQuery Global AJAX事件处理程序的文档:http://api.jquery.com/ajaxComplete/