【问题标题】:How to display the value of the selected option tag when clicked AJAX单击AJAX时如何显示所选选项标签的值
【发布时间】:2019-01-06 18:15:44
【问题描述】:

一旦使用 ajax 单击/选择它,我想在选择标签内显示该选项的值。我试过这段代码(如下),但它不起作用。

    <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>

这是我的 ajax 代码

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

【问题讨论】:

  • $('#count_paxx').val(); 应该够了
  • document.getElementById('demo_paxx').innerHTML = $(this).val()
  • 你到底指的是什么“ajax”?

标签: javascript jquery ajax


【解决方案1】:

$demo_paxx ID 不存在($ 不应该存在)。

由于您使用的是 jQuery,您可以:

  • 使用ID Selector$('#demo_paxx') 选择它,
  • 通过使用检索选定的值 .val()select 元素上,
  • 使用.text() 更改其内容。

演示:

$(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>

【讨论】:

    【解决方案2】:

    每个选择项都有一个值,即被选择的值。您需要在更改时查找值的选项。

    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

    【讨论】:

      猜你喜欢
      • 2022-01-10
      • 1970-01-01
      • 1970-01-01
      • 2019-11-08
      • 2023-01-31
      • 1970-01-01
      • 1970-01-01
      • 2018-11-29
      • 1970-01-01
      相关资源
      最近更新 更多