2016-12-26 57 views
0

这是我的代码,当select改变时,我想让一个spinner出现在网页上。然后,我们完成更改后,应该隐藏微调器。 但是纺纱工没有出现。当我评论“img.style.display =”none“;”, 微调将显示并永不停止。这似乎有点奇怪。spinner did nott up up

$('#arraySelector').change(function() { 
      var img = document.getElementById('MainContent_spinner'); 
      img.style.display = "inline"; 
      // do something here... 
      dosomething(); 
      img.style.display = "none"; 
     }); 
+0

'dosomething'是做什么用的?您可以将回调函数传递给它。 –

+0

在执行'dosomething'后,将'dosomething'作为异步调用,将显示设置为none –

+0

@AdamAzad,发布'dosomething()'执行程序 – TRiNE

回答

0

您应该做的最好的事情是使用AJAX来检查请求是否正在处理。 试试用这段代码:

$(document).ajaxStart(function() { 
       $(".loader").css("display", "block"); 
      }); 

      $(document).ajaxStop(function() { 
       $(".loader").css("display", "none"); 
      }); 
+0

非常感谢回复。我怎样才能确保代码以正确的顺序执行而不使用ajax,因为dosomething()没有使用ajax,它只是通过D3.js绘制图表。 –