Home > Back-end >  how to test if i have the last option of a select is selected
how to test if i have the last option of a select is selected

Time:01-06

helo everyone in my case i want to add a test to see if the last option of the select was selected or not

this is my select :

<select  name="billing_address_id" data-bind="
        options: addressOptions,
        optionsText: addressOptionsText,
        value: selectedAddress,
        event: {change: onAddressChange(selectedAddress())};
    "><option value="">adress 1</option><option value=""> adresse2</option><option value=""> Adresse 3</option><option value=""> Adresse4</option>
<option value="">New Address</option>
</select>

CodePudding user response:

Select elements last text and compare with selected option's text

function test(el) {
    let lastValue = $(el).find('option').last().text();
    let selectedValue = $('option:selected', el).text();
    
    console.log(lastValue, selectedValue, lastValue === selectedValue);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select  onChange="test(this)" name="billing_address_id" data-bind="
        options: addressOptions,
        optionsText: addressOptionsText,
        value: selectedAddress,
        event: {change: onAddressChange(selectedAddress())};
    ">
  <option value="">adress 1</option>
  <option value=""> adresse2</option>
  <option value=""> Adresse 3</option>
  <option value=""> Adresse4</option>
  <option value="">New Address</option>
</select>

  •  Tags:  
  • Related