如何使用jQuery的.load()函数返回一个元素的innerHTML
问题描述:
JQuery的如何使用jQuery的.load()函数返回一个元素的innerHTML
假设这个作品:$('table td').load('/my/url/ div p');
我最终会与<td><p>Some Text</p></td>
我想结束与<td>Some Text</td>
我该怎么做?
答
您可能需要使用回调函数。喜欢的东西:
$('table td').load('/my/url/ div p', function() {
$(this).find("p").replaceWith($(this).text());
});
答
var el = $('table td').load('/my/url/ div p', function() {
var $this = $(this);
$this.html($this.find('p').html());
});
答
选择P的所有直接子:
$('table td').load('/my/url/ div p > *');
+0
尝试过'div p *',这是一场灾难。你的解决方案从我+1工作。 – 2013-05-15 22:59:49
这wont't工作由于AJAX的异步特性。在执行第二行时,DOM可能尚未更新。 – 2010-04-07 22:16:37
@Darin Dimitrov:我意识到发布后很快就会改用它来代替回调。它已经很晚了,我的大脑被炸了;-) – 2010-04-08 10:12:31