fackz
fackz

Reputation: 531

Hide a div when ajax returns nothing

I have an ajax function that loads 1 news at time everytime the user clicks on "load more". It works like a facebook pagination.

The problem is: when it reachs the end of my database, it doesn't load anything else so I would like to remove the link "load more" when it happens but I couldn't do it.

Here's my JS function:

function loadNews(pageLimit){
         var dataString = 'pageLimit='+ pageLimit;
         $.ajax({
                type: "POST",
                url: "ajaxnovidades.php",
                data: dataString,
                cache: false,
                success: function(result){ 
                $("#maisnews").hide();
                $("#maisupdates").append(result);
          }
      });
    }
    loadNews('0');

I have tried to check if result is empty (result=="") and then hide() the #maisnews div, which is the one with the "load more" link but it doesn't work...

Any help?!

Upvotes: 0

Views: 97

Answers (2)

MaVRoSCy
MaVRoSCy

Reputation: 17859

You can try something like:

function loadNews(pageLimit){
     var dataString = 'pageLimit='+ pageLimit;
     $.ajax({
            type: "POST",
            url: "ajaxnovidades.php",
            data: dataString,
            cache: false,
            success: function(result){ 
              if($.trim(result).length==0){
                //$(element).hide()
                $("#maisnews").hide();
              }else{
                $("#maisupdates").append(result);
              }
      }
  });
}
loadNews('0');

Upvotes: 0

Ringo
Ringo

Reputation: 3967

Try this:

if ( ! $.trim(result).length ) $('#maisnews').hide();

Upvotes: 2

Related Questions