Нужна функция типа jquery empty (), которая удаляет элементы, добавленные jquery - PullRequest
0 голосов
/ 28 августа 2011

У меня есть пустой div, который называется "content". Позднее ссылки добавляются в «контент» с помощью 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

Ответы [ 3 ]

1 голос
/ 28 августа 2011

Попробуйте это:

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(''));
      });
}
1 голос
/ 28 августа 2011

Используйте $(...).remove() вместо ... Или $("#content").html("")

0 голосов
/ 28 августа 2011

У меня работает, зацените

http://jsfiddle.net/gzNFK/2/

примечание: удалите комментарий, чтобы использовать его

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...