JSFiddle - React, Tailwind, and code Playground

by joshmoto

HTML

<script src="//code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<link rel="stylesheet" href="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js"></script>
<script src="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark">
  <a class="navbar-brand" href="#">Fixed navbar</a>
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
      </button>
  <div class="collapse navbar-collapse" id="navbarCollapse">
    <ul class="navbar-nav mr-auto">
      <li class="nav-item active">
        <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">Link</a>
      </li>
      <li class="nav-item">
        <a class="nav-link disabled" href="#">Disabled</a>
      </li>
    </ul>
    <form class="form-inline mt-2 mt-md-0">
      <input class="form-control mr-sm-2" type="text" placeholder="Search" aria-label="Search">
      <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
    </form>
  </div>
</nav>

<main role="main" class="container mt-3">
  <table class="table table-striped">
    <thead>
      <tr>
        <th scope="col">#</th>
        <th scope="col">Quantity</th>
        <th scope="col">GBR (&pound;)</th>
        <th scope="col">Euro (&euro;)</th>
      </tr>
    </thead>
    <tbody>
      
    </tbody>
  </table>
</main>

SCSS

BODY {
  min-height: 75rem;
  padding-top: 4.5rem;
  transition: padding .5s ease-in-out;
}

.navbar.fixed-top {
  transition: top .5s ease-in-out;
}

JavaScript

var coverPrices = {
  10: '543',
  25: '1,232',
  50: '1,948',
  75: '2,464',
  100: '2,987',
  150: '4,070',
  200: '5,042',
  250: '5,967',
  500: '10,051'
};

var $tableBody = $('table.table tbody');

var row = 1;

$.each( coverPrices, function( index, value ){
	
  var gbrEurEx = 1.10051;
  
  var qty = index,
   		gbr = value,
  		eur = Math.ceil((value.replace(/,/gi, '')) * gbrEurEx);
      
	var tr = '<tr><th scope="row">'+row+'</th><td>'+qty+'</td><td>'+gbr+'</td><td>'+eur.toLocaleString(undefined)+'</td></tr>';
	
  $tableBody.append(tr);
  
  row +=1;
  
});