Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 订阅';完成';特定DOM元素上的.load()事件?_Jquery_Ajax - Fatal编程技术网

Jquery 订阅';完成';特定DOM元素上的.load()事件?

Jquery 订阅';完成';特定DOM元素上的.load()事件?,jquery,ajax,Jquery,Ajax,我已经使用.live()和.bind('ajaxComplete')来完成某些相关任务,但我发现自己希望能够监听特定DOM元素的“complete”事件,该事件将在不同时间调用jQuery的.load() 在这种情况下,我不想全局侦听所有完整事件(除非有人能告诉我如何从“ajaxComplete”返回的事件对象中获取适当的目标)。我希望能够做到以下几点: $('.selector').load('url.php',{data:data},function(){ // LOCAL compl

我已经使用.live()和.bind('ajaxComplete')来完成某些相关任务,但我发现自己希望能够监听特定DOM元素的“complete”事件,该事件将在不同时间调用jQuery的.load()

在这种情况下,我不想全局侦听所有完整事件(除非有人能告诉我如何从“ajaxComplete”返回的事件对象中获取适当的目标)。我希望能够做到以下几点:

$('.selector').load('url.php',{data:data},function(){
   // LOCAL complete function
});
然后在其他地方,每当ajax调用触发并完成时,附加一个处理程序来侦听和执行一些其他代码:

$('.selector').bind('complete',function(){ ... });
我知道我可以使用上面提到的“本地完整函数”来附加一些功能,但我希望能够从代码中的其他地方绑定到完整事件,就像我对其他事件(如“单击”)所做的那样


有没有办法做到这一点?或者我必须始终在load()方法的上下文中使用“complete”事件吗?

如果您的示例已接近尾声,请参阅jQuery上的.load()文档


只需在本地complete回调中触发complete事件:

$('.selector').load('url.php',{data:data},function(){
   $(this).trigger('complete');
   // Local handling of the complete event.
});

$('.selector').bind('complete',function(){ ... });

? 根据文档,load()方法采用可选的数据对象参数。加载(url,[数据],[完成(responseText,textStatus,XMLHttpRequest)]编辑:如果问题不清楚,我很抱歉,在上面编辑谢谢,这正是我需要的!这是一个非常简单的解决方案
$('.selector').load('url.php',{data:data},function(){
   $(this).trigger('complete');
   // Local handling of the complete event.
});

$('.selector').bind('complete',function(){ ... });