Quantcast
Channel: User Mohamed Mufeed - Stack Overflow
Viewing all articles
Browse latest Browse all 37

Answer by Mohamed Mufeed for Pagination on bootstrap cards

$
0
0

For pagination to work you need data. Here you specified the dataSource as an array with values 1 - 16. If you want your cards to be paginated, you need the data source for the cards: as array - in your case, 30 of them - I believe, and the template function must accept the data and return html - in your case, the HTML for one card.

For example, lets assume that your data source is something like this.

var data = [  {     id: 'motor-cards',    img: {      src: 'images/motor.jpg',      desc: 'Card image cap'    }    name: 'Yamaha example',    usd: 123456.00,    year: 2001,    km: 15000,    cm3_per_rev: 100    size_class: 'A2'  },  ...];

then you would have a template function like this

var template = function (vehicle) { return (`<div class="card" id="${vehicle.id}"><img class="card-img-top" src="${vehicle.img.src}" alt="${vehicle.img.desc}"><div class="card-body"><div class="short-data"><h5 class="card-title">${vehicle.name}</h5><h6 class="card-subtitle mb-2 text-muted">${vehicle.usd} $</h6><div class="card-footer"><i class="fas fa-calendar-alt text-center" data-toggle="tooltip" title="example"><br>${vehicle.year}</i><i class="fas fa-road text-center" data-toggle="tooltip" title="Kilométeróra állása"><br>${vehicle.km}km</i><i class="fas fa-tachometer-alt text-center" data-toggle="tooltip" title="example"><br>${vehicle.cm3_per_rev}cm³</i><i class="fas fa-id-card text-center" data-toggle="tooltip" title="example"><br>${vehicle.size_class}</i></div></div><a href="#" class="btn btn-primary" data-toggle="modal" data-target="#detailsModal">Details</a><div class="card-footer-icons"><i class="fas fa-warehouse fa-lg" data-toggle="tooltip" title="Garagehelyezés"></i><i class="fas fa-share-alt fa-lg" data-toggle="tooltip" title="Share" style="padding-left: 5px;"></i></div></div></div>`  );}

So you will not have this 30 cards in the html, instead, there will only be the container.

Full eg.

<div class="pagination-wrapper"><div id="cards-container"><!-- cards will be put here by pagination.js --></div><div id="pagination-container"><!-- the pagination controls will be put here by pagination.js --></div></div><script>var data = [  {     id: 'motor-cards',    img: {      src: 'images/motor.jpg',      desc: 'Card image cap'    }    name: 'Yamaha example',    usd: 123456.00,    year: 2001,    km: 15000,    cm3_per_rev: 100    size_class: 'A2'  },  ... // 30 of similar objects for your cards];var template = function (vehicle) { return (`<div class="card" id="${vehicle.id}"><img class="card-img-top" src="${vehicle.img.src}" alt="${vehicle.img.desc}"><div class="card-body"><div class="short-data"><h5 class="card-title">${vehicle.name}</h5><h6 class="card-subtitle mb-2 text-muted">${vehicle.usd} $</h6><div class="card-footer"><i class="fas fa-calendar-alt text-center" data-toggle="tooltip" title="example"><br>${vehicle.year}</i><i class="fas fa-road text-center" data-toggle="tooltip" title="Kilométeróra állása"><br>${vehicle.km}km</i><i class="fas fa-tachometer-alt text-center" data-toggle="tooltip" title="example"><br>${vehicle.cm3_per_rev}cm³</i><i class="fas fa-id-card text-center" data-toggle="tooltip" title="example"><br>${vehicle.size_class}</i></div></div><a href="#" class="btn btn-primary" data-toggle="modal" data-target="#detailsModal">Details</a><div class="card-footer-icons"><i class="fas fa-warehouse fa-lg" data-toggle="tooltip" title="Garagehelyezés"></i><i class="fas fa-share-alt fa-lg" data-toggle="tooltip" title="Share" style="padding-left: 5px;"></i></div></div></div>`  );}var $cardsContainer = $('#cards-container');$('#pagination-container').pagination({  dataSource: data,  pageSize: 20,  callback: function(data, pagination) {    $cardsContainer.html(template(data));  }})</script>

Note: You may need to tweak here and there according to your use case.


Viewing all articles
Browse latest Browse all 37

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>