简体   繁体   中英

How to display the value of the selected option tag when clicked AJAX

I want to display the value of the option inside of select tag as soon as it is clicked/selected using ajax. I tried this code(below) but it doesn't work.

    <div class="form-group row">
        <select name="count_pax" id="count_paxx" class="form-control col-md-9"/>
            <option value="">Select how many people</option>
            <option value="1">1 pax</option>
            <option value="2">2 pax</option>
            <option value="3">3 pax</option>
            <option value="4">4 pax</option>
            <option value="5">5 pax</option>
            <option value="6">6 pax</option>
            <option value="7">7 pax</option>
            <option value="8">8 pax</option>
            <option value="9">9 pax</option>
            <option value="10">10 pax</option>
            <option value="11">11 pax</option>
            <option value="12">12 pax</option>
        </select>
    </div>
    <div class="form-group row" id="demo_paxx">
    </div>

This is my ajax code

    $(document).ready(function() {
        $("#count_paxx").change(function(){
            document.getElementById('$demo_paxx').innerHTML = $('#count_paxx option:selected').val();
        })
    });

Each select item has a value, which is the selected value. You will need to lookup the value's option on change.

const selectElem = document.querySelector('#count_paxx');
const outputElem = document.querySelector('#demo_paxx');

selectElem.addEventListener('change', () => {
    outputElem.innerText = selectElem.querySelector(`option[value='${selectElem.value}']`).innerText
});

JSFIDDLE

The $demo_paxx ID doesn't exist (that $ should not be there).

Since you're using jQuery, you can:

  • select it using the ID Selector , with $('#demo_paxx') ,
  • retrieve the selected value by using .val() on the select element,
  • make use of .text() to alter its content.

Demo:

 $(function() { $('#count_paxx').on('change', function() { $('#demo_paxx').text($(this).val()); }) }); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="form-group row"> <select name="count_pax" id="count_paxx" class="form-control col-md-9" /> <option value="">Select how many people</option> <option value="1">1 pax</option> <option value="2">2 pax</option> <option value="3">3 pax</option> <option value="4">4 pax</option> <option value="5">5 pax</option> <option value="6">6 pax</option> <option value="7">7 pax</option> <option value="8">8 pax</option> <option value="9">9 pax</option> <option value="10">10 pax</option> <option value="11">11 pax</option> <option value="12">12 pax</option> </select> </div> <div class="form-group row" id="demo_paxx"> </div> 

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM