Что ж, вы можете сделать это намного проще, например, добавив некоторые данные, связанные с предметом, во входные данные, а когда объект выбран, покажите те, у которых есть связанные данные, и скройте те, у которых нет данных:
$(".columns").click(function () {
var subject = $(this).text().trim();
$('[data-for]').each(function(){
if($(this).data('for')==subject) $(this).fadeIn(2000);
else $(this).hide();
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
<li class="columns">
<label>
<div>
<span>Mathematics</span>
</div>
</label>
</li>
<li class="columns">
<label>
<div>
<span>English</span>
</div>
</label>
</li>
<li class="columns">
<label>
<div>
<span>Swahili</span>
</div>
</label>
</li>
<li class="columns">
<label>
<div>
<span>Religious</span>
</div>
</label>
</li>
</ul>
<!-- Maths Input-->
<div class="row mathInput" style="display: none;" data-for="Mathematics">
<div class="col-6 offset-3">
<h1>Select Percentage (math)? </h1>
<div class="form-group">
<select class="form-control otherMenu wide" id="relation1">
<option selected disabled hidden>Choose here</option>
<option value="1"> 20% </option>
<option value="2"> 40% </option>
<option value="3"> 60% </option>
<option value="4"> 70% </option>
<option value="5"> 90% </option>
</select>
</div>
</div>
</div>
<!--END-->
<!-- English Input-->
<div class="row engInput" style="display: none;" data-for="English">
<div class="col-6 offset-3">
<h1>Select Percentage (eng)? </h1>
<div class="form-group">
<select class="form-control otherMenu wide" id="relation2">
<option selected disabled hidden>Choose here</option>
<option value="1"> 20% </option>
<option value="2"> 40% </option>
<option value="3"> 60% </option>
<option value="4"> 70% </option>
<option value="5"> 90% </option>
</select>
</div>
</div>
</div>
<!--END-->
У вас также может быть несколько элементов с одинаковыми данными, и все они будут видны при выборе этого объекта.