如何获取下拉列表的值并在标签中显示

时间:2017-08-18 12:30:50

标签: javascript jquery html

我有一个下拉列表,我用动态数据填充内容,在模型中我将数据附加到下拉列表

$("#dpp").append($("<option disabled></option>").val(0).html('Select Locations'));

$("#dpp").append($("<option selected='selected'></option>").val(1111).html('All'));
for (var i = 0; i < Location.length; i++) {                           
    $("#dpp").append($("<option></option>").val(data[i].sno).html(data[i].name));

}

我无法通过使用更改处理程序获取所选选项的值和文本。

我试过了:

$('#dpp').change(function () {
    var thisvalue = $(this + "option:selected").text();
    alert(thisvalue);
});

默认情况下,在下拉列表中选择所有选项。

如何获取该值或文字并将其显示在标签上?

4 个答案:

答案 0 :(得分:1)

对于变更事件和文档准备:

&#13;
&#13;
$(document).ready(function() {
  getSelectData($('#dpp'));
});

$('#dpp').on('change', function() {
  getSelectData($(this));
});

function getSelectData(el) {
  var $option = el.find('option:selected');
  var text = $option.text();
  var val = $option.val();

  alert('option text: ' + text + '; option value ' + val)
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="name" id="dpp">
  <option value="1">One</option>
  <option value="2">Two</option>
  <option value="3">Three</option>
</select>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

将以下代码用于两种目的(在页面加载和更改事件时)

$(document).ready(function() {

   var dppText= $("#dpp option:selected").text(); // to get text on page load


 //to get text on change of drop-down
  $(document).on('change','#dpp',function(){
   var thisvalue = $(this + "option:selected").text();
   alert(thisvalue);
 });

});

答案 2 :(得分:0)

您可以使用:

$(document).on('change','#dpp',function(){
    var thisvalue = $(this + "option:selected").text();
    alert(thisvalue);
});

这会将change侦听器添加到文档级别,以便您能够在change上检测到dpp

答案 3 :(得分:0)

这样做:

$("#dpp option:selected").val();