jQuery选择器没有在ajaxcomplete调用的函数内运行

时间:2015-05-15 18:08:08

标签: javascript jquery ajax

我需要替换动态创建的元素中的一些文本。

我试过了:

$(document).ajaxComplete(function() {
       console.log('I started');
       $(".classname:contains('foo')").html('bar');
       console.log('I finished');
 })

该功能在我想要的时候开始并完成,但选择和替换永远不会发生。

如果我只是在控制台中运行替换,在元素存在之后,它可以正常工作:

> $(".classname:contains('foo')").html('bar')
> [<label class=​"classname" for=​"element">bar​</label>​]

正如运行选择并不断更换:

var interval = setInterval(function() {$(".classname:contains('foo')").html('bar')})

如何才能让我的jQuery在我需要时运行?

1 个答案:

答案 0 :(得分:0)

对我而言,它似乎应该有用。

$(function () {
   $(document).ajaxComplete(function() {
       console.log('I started');
       $(".classname:contains('foo')").html('bar');
       console.log('I finished');
   });
   $.get('www.example.com');
});

您可以在示例小提琴中看到它:http://jsfiddle.net/0g3dmnfc/

也许你应该把它包装好。