Reputation: 41
Suppose I have this select:
<select class="required form-control parameter-criteria" selectpicker="" data-id="2" tabindex="-98">
<optgroup label="criterio 2">
<option value="1" data-content="<span class="badge-min filter d-inline-flex" style="background-color:#ff0000;"> </span>CRITERIO 1 [0 - 50] - CRITERIO 2" id-criteria="2">CRITERIO 1
</option>
<option value="2" data-content="<span class="badge-min filter d-inline-flex" style="background-color:#ffb700;"> </span>CRITERIO 2 [51 - 60] - CRITERIO 2" id-criteria="2">CRITERIO 2
</option>
<option value="3" data-content="<span class="badge-min filter d-inline-flex" style="background-color:#66ff00;"> </span>CRITERIO 3 [61 - 100] - CRITERIO 2" id-criteria="2">CRITERIO 3
</option>
</optgroup>
</select>
I'm trying to select the option which have as id-criteria=2
and as value = 3
, so I did:
$('.parameter-criteria[data-id=2]')
.find('option[value=3]')
.find('id-criteria', 2).prop('selected', true);
but this won't work, any idea?
Upvotes: 0
Views: 103
Reputation: 12619
You can specify both criteria as .find('option[value=3][id-criteria=2]')
.
$('.parameter-criteria[data-id=2]')
.find('option[value=3][id-criteria=2]')
.prop('selected', true);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<select class="required form-control parameter-criteria" selectpicker="" data-id="2" tabindex="-98">
<optgroup label="criterio 2">
<option value="1" data-content="<span class="badge-min filter d-inline-flex" style="background-color:#ff0000;"> </span>CRITERIO 1 [0 - 50] - CRITERIO 2" id-criteria="2">CRITERIO 1
</option>
<option value="2" data-content="<span class="badge-min filter d-inline-flex" style="background-color:#ffb700;"> </span>CRITERIO 2 [51 - 60] - CRITERIO 2" id-criteria="2">CRITERIO 2
</option>
<option value="3" data-content="<span class="badge-min filter d-inline-flex" style="background-color:#66ff00;"> </span>CRITERIO 3 [61 - 100] - CRITERIO 2" id-criteria="2">CRITERIO 3
</option>
</optgroup>
</select>
Upvotes: 1