AwadGorg's avatar

Coverting from jquery to javascript

Hello I have this code in jquery and I want to cover it to pure javascript cuz does not make any sense for me to use 80k liberty to just make a small task can anyone help please am very bad when it comes to js but kind of good at jquery. Jquery

<script async>
        $(document).on('click', '.pagination a', function(event){
            event.preventDefault();
            $(".page-loader").removeClass('page-loader-hidden');
            var page = $(this).attr('href').split('page=')[1];
            fetch_data(page);
        });
        function fetch_data(page){
            $.ajax({
                url: '/pagination/fetch_browsergames_data?page='+page,
                success: function(data){
                    $("#games_content").html(data);
                    $('html, body').animate({scrollTop : 0},1000);
                    var lazyLoadInstance = new LazyLoad({
                        elements_selector: ".lazy"
                        // ... more custom settings?
                    });
                    $(".page-loader").addClass('page-loader-hidden');
                }
            })
        }
        //search box
  $(document).ready(function(e){
  $("#searchBox").keyup(function() {
  $("#show_upSearch").removeClass('d-none');
  var text = $(this).val();
  var textlen = $(this).val(),length;
  $.ajax({
  method:"GET",
  url:"/search-box/browser-game",
  data:{text:text},
  success:function(data){
  if (textlen != 0) {
  $("#show_upSearch").html(data);
  }else{
  $("#show_upSearch").html("");
  }
  }
  })
  });
  });
</script>
0 likes
10 replies
Sinnbeck's avatar

Sure. What part are you having trouble converting? Or are you just looking for someone to do the job for you?

bugsysha's avatar

Or are you just looking for someone to do the job for you?

šŸ˜‚

Harsh but true.

AwadGorg's avatar

working with event handler is easy the only thing i field doing is javascript with ajax this part

function fetch_data(page){
            $.ajax({
                url: '/pagination/fetch_browsergames_data?page='+page,
                success: function(data){
                    $("#games_content").html(data);
                    $('html, body').animate({scrollTop : 0},1000);
                    var lazyLoadInstance = new LazyLoad({
                        elements_selector: ".lazy"
                        // ... more custom settings?
                    });
                    $(".page-loader").addClass('page-loader-hidden');
                }
            })
        }

and no am not looking for someone to do all for me, and i was already trying to do it myself before posting this Q and after searching on google and so on to know how to handle how to work with event lessenor and also work with js and ajax the event lessener part was easy but the ajax part was really confussing and i could'nt get it.

Sinnbeck's avatar
Sinnbeck
Best Answer
Level 102

Here is an example :)

function fetch_data(page){
var request = new XMLHttpRequest();
request.open('GET', '/pagination/fetch_browsergames_data?page='+page,, true);

request.onload = function() {
  if (this.status >= 200 && this.status < 400) {
    // Success!
    var data = JSON.parse(this.response);
//redo the next part with javascript.
$("#games_content").html(data);

                    $('html, body').animate({scrollTop : 0},1000);
                    var lazyLoadInstance = new LazyLoad({
                        elements_selector: ".lazy"
                        // ... more custom settings?
                    });
                    $(".page-loader").addClass('page-loader-hidden');
  }
};
request.send();
1 like
bugsysha's avatar
fetch('/pagination/fetch_browsergames_data?page='+page)
    .then(function (data) {
        document.querySelector('#games_content').innerHtml = data;
        var lazyLoadInstance = new LazyLoad({
                        elements_selector: ".lazy"
                        // ... more custom settings?
                    });
        document.querySelector('.page-loader').classList.add('page-loader-hidden');
    });
AwadGorg's avatar

now am getting this error

VM92:1 Uncaught SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
    at XMLHttpRequest.request.onload (browser-games?page=2:1152)

and this is the source

// Success!
    var data = JSON.parse(this.response);

Please or to participate in this conversation.