我有一个名为“内容”的空白div。稍后使用jquery append将链接添加到“内容”。使用empty()不起作用;我猜empty()不会清除jquery添加的链接,因为链接没有添加到DOM中?
函数应该清除,然后显示新的链接,但它不清除链接,只是附加到现有的任何内容。
function getSubRedditLinks(url)
{
$("#content").empty(); //doesnt work
$.getJSON(
url + suffix,
function foo(data)
{
$("#content").empty(); //doesnt work
$.each(
data.data.children,
function (i, post)
{
$("#content").append( '<section>' +
'<a href="#">' + post.data.title + '</a>' +
'</section>' );
}
);
}
);
$("#content").empty(); //doesnt work
}
函数被调用如下:
<li><a class="link" href="#" onclick=getLinks("localhost")>Blogroll</a></li>
显然,empty()应该可以工作。我简化了上面的代码,把它放在我放的3个地方。它只是不断添加#content
的链接答案 0 :(得分:1)
使用$(...).remove()
代替......或$("#content").html("")
答案 1 :(得分:1)
试试这个:
function getLinks(url)
{
$.getJSON(
url + suffix,
function(data)
{
var items = [];
$.each(
data.data.children,
function (i, post)
{
var section = $('<section></section>').append('<a></a>');
section.find('a').attr('href', '#post=post-' + i).text(post.data.title);
items.push(section[0].outerHTML);
}
);
$('#content').empty().append(items.join(''));
});
}
答案 2 :(得分:0)