如何从移动浏览器上的“选择”标记中选择选项?

时间:2018-01-27 19:11:47

标签: jquery

我需要从以下下拉列表中获取所选值

<select id = "sel123">
  <option selected value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option>
</select> 

这是我尝试的内容

 alert($("#sel123 option:selected").text()); 

我在桌面浏览器上运行良好。

但是当我在移动设备上测试相同的东西时,无论我选择什么,jquery总是拉动“沃尔沃”选项。 我的意思是当我选择“萨博”或“奥迪”时,下拉显示“萨博”或“奥迪”。 。 。但jquery提醒仍显示“沃尔沃”

为什么会这样?如何在移动浏览器上获取“选定”值? (我一直在Airwatch浏览器IPhone和Chrom Android上测试它)

编辑:我怀疑这可能是因为我在“Volvo”选项中预设了selected attr并且移动浏览器未确定更改

2 个答案:

答案 0 :(得分:3)

如果发生变化,您需要提醒。试试这样:

$("#sel123").change(function() {
  alert($(this).find("option:selected").text());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id = "sel123">
  <option selected value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="mercedes">Mercedes</option>
  <option value="audi">Audi</option>
</select>

详细了解jQuery change() here

答案 1 :(得分:1)

让我们在发生任何更改后立即尝试删除selected属性

$("#sel123").change(function() {
  $(this).find("option[selected]").removeAttr('selected');
});