Filter menu active or inactive using Javascript in laravel
First, suppose you have menu like this
<a
href="{{ route('posts.index') }}"
class="btn btn-sm btn-outline-secondary mr-1 allclass">
All
</a>
<a
href="{{ route('posts.index',['filterBy'=> 'activepost']) }}"
class="btn btn-sm btn-outline-secondary mr-1 activeclass {{ request('filterBy') == 'activepost' ? 'active' : '' }}">
Active
</a>
<a
href="{{ route('posts.index',['filterBy'=> 'inactivepost']) }}"
class="btn btn-sm btn-outline-secondary mr-1 inactiveclass {{ request('filterBy') == 'inactivepost' ? 'active' : '' }}">
Inactive
</a>
Then control the menu active inactive for all tag
<script>
function getAll(){
const allelement = document.querySelector('.allclass');
const activeelement = document.querySelector('.activeclass');
const inactiveelement = document.querySelector('.inactiveclass');
if(activeelement.classList.contains('active')){
allelement.classList.remove('active');
} else if(inactiveelement.classList.contains('active')) {
allelement.classList.remove('active');
} else {
allelement.classList.add('active');
}
}
// getAll();
window.addEventListener('load', getAll);
</script>
Comments
Post a Comment