2016-04-26 125 views
0

我试图触发ajaxstart()当一个按钮与类被点击,但它不工作,任何反馈将不胜感激。触发ajaxStart()onclick按钮

感谢。

代码:

$('.search-btn').ajaxStart(function() { 
     $('#spinner').show(); 
    }).ajaxComplete(function() { 
     $('#spinner').hide(); 
    }); 
+0

'ajaxstart()'不应该被“触发按钮时按下” - 它应该对负载进行定义,当你运行一个Ajax任务,然后会自动触发。如果您还想在单击按钮时使用*相同*功能(微调器显示/隐藏),则将功能放入函数中并从两者中调用。 –

回答

0

有点困惑,什么是在你的例子发生。但我写出了我想要做的认为

$('.search-btn').on('click', function() { 
    $(this).ajaxStart(function(){ 
     $('#spinner').show(); 
    }).ajaxComplete(function() { 
     $('#spinner').hide(); 
    }); 
}); 
+0

“触发器”ajax开始,而不是设置ajaxstart - 这不会在点击时显示微调器。如果这真的*是* OP想要的,那么他们需要一个巴掌。 :) –

+0

同意,不完全确定他们以后是什么,我的答案可能丝毫没有用处。 :P – Flux

1

$.ajaxStart()$.ajaxComplete()应附$(document)。见$.ajaxStart()

在jQuery 1.9,全部为jQuery global Ajax events处理程序,包括那些与.ajaxStart()方法添加,必须 被附接到document

$(document).ajaxStart(function() { 
     $("#spinner").show(); 
    }).ajaxComplete(function() { 
     $("#spinner").hide(); 
    });