Reputation: 25
I have two different drop downs here. Both the drop downs have some options with different classes. I want to hide the options of a particular class from a particular drop down, not from both the drop downs.I am using $(".sa").hide()
, but it hides the options from both the drop downs. How can I hide from a single drop down?
My HTML code -
<head>
</head>
<body>
<select name="player1" class="btn btn-secondary btn-lg dropdown-toggle" style="text-size : 50px;">
<option value="select" disabled= "true" style="color: grey" selected>Player 1</option>
<option class="ind" value="4104">Mayank Agrawal</option>
<option class="ind" value="4063">Yuzvendra Chahal</option>
<option class="ind" value="3644">Ravindra Jadeja</option>
<option class="ind" value="4034">Siddarth Kaul</option>
<option class="ind" value="3991">Bhuvneshwar Kumar</option>
<option class="sa" value="3783">David Miller</option>
<option class="sa" value="4636">Lungisani Ngidi</option>
<option class="sa" value="4641">Dane Paterson</option>
<option class="sa" value="4339">Kagiso Rabada</option>
<option class="sa" value="4637">JJ Smuts</option>
<option class="sa" value="5829">Kyle Verreynne</option>
</select>
<select name="player2" class="btn btn-secondary btn-lg dropdown-toggle">
<option value="select" disabled= "true" style="color: grey" selected>Player 1</option>
<option class="ind" value="4104">Mayank Agrawal</option>
<option class="ind" value="4063">Yuzvendra Chahal</option>
<option class="ind" value="3644">Ravindra Jadeja</option>
<option class="ind" value="4034">Siddarth Kaul</option>
<option class="ind" value="3991">Bhuvneshwar Kumar</option>
<option class="sa" value="3783">David Miller</option>
<option class="sa" value="4636">Lungisani Ngidi</option>
<option class="sa" value="4641">Dane Paterson</option>
<option class="sa" value="4339">Kagiso Rabada</option>
<option class="sa" value="4637">JJ Smuts</option>
<option class="sa" value="5829">Kyle Verreynne</option>
</select>
</body>
<script src="D:\Important Documents\Rohit\django_pro\hello\static\jquery-3.5.1.min.js"></script>
</html> ```
[enter image description here][1]
[1]: https://i.sstatic.net/H9ZwP.png
Upvotes: 1
Views: 46
Reputation: 447
try this,
$("select[name='player1'] option.sa").hide()
To target <option> in particular <select>, You have to traverse DOM from its parent <select>. above statement first targets <select name="player1"> and then looks for <option class="sa"> inside that <select>.
See this Jquery selector https://api.jquery.com/descendant-selector/
Upvotes: 0
Reputation: 11055
Just narrow your selector to the name > class
selector:
$('select[name="player2"] .sa').hide()
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select name="player1" class="btn btn-secondary btn-lg dropdown-toggle" style="text-size : 50px;">
<option value="select" disabled= "true" style="color: grey" selected>Player 1</option>
<option class="ind" value="4104">Mayank Agrawal</option>
<option class="ind" value="4063">Yuzvendra Chahal</option>
<option class="ind" value="3644">Ravindra Jadeja</option>
<option class="ind" value="4034">Siddarth Kaul</option>
<option class="ind" value="3991">Bhuvneshwar Kumar</option>
<option class="sa" value="3783">David Miller</option>
<option class="sa" value="4636">Lungisani Ngidi</option>
<option class="sa" value="4641">Dane Paterson</option>
<option class="sa" value="4339">Kagiso Rabada</option>
<option class="sa" value="4637">JJ Smuts</option>
<option class="sa" value="5829">Kyle Verreynne</option>
</select>
<select name="player2" class="btn btn-secondary btn-lg dropdown-toggle">
<option value="select" disabled= "true" style="color: grey" selected>Player 2</option>
<option class="ind" value="4104">Mayank Agrawal</option>
<option class="ind" value="4063">Yuzvendra Chahal</option>
<option class="ind" value="3644">Ravindra Jadeja</option>
<option class="ind" value="4034">Siddarth Kaul</option>
<option class="ind" value="3991">Bhuvneshwar Kumar</option>
<option class="sa" value="3783">David Miller</option>
<option class="sa" value="4636">Lungisani Ngidi</option>
<option class="sa" value="4641">Dane Paterson</option>
<option class="sa" value="4339">Kagiso Rabada</option>
<option class="sa" value="4637">JJ Smuts</option>
<option class="sa" value="5829">Kyle Verreynne</option>
</select>
Upvotes: 3