获取下拉菜单的选定值
Get selected value of dropdown
我有一个相当不同的HTML结构,我正试图获得下拉列表的选定值,如下面的代码所示:
<div class="quantityDropdown quantityDropdown-cartItem">
<select id="qtySelect-61224b70-7b26-11e6-91d5-6921d6fe7421" class="cart-quantity-picker"
data-orderitem="61224b70-7b26-11e6-91d5-6921d6fe7421">
<option value="1">1</option>
<option value="2" selected="">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
</div>
我的代码返回null
。
我想得到2作为我的值。如您所见,selected
属性中没有值。
var quantity = document.querySelector(".quantityDropdown select").getAttribute("selected");
如何获得选项标签外的值2 ?
你应该得到选项标签,像这样:
var quantity = document.querySelector(".quantityDropdown select option:checked");
你可以使用checked作为复选框和单选。
这将为您提供所选项的值:
quantity = document.querySelector(".quantityDropdown select").value;
但是,如果您希望所选项目的实际内容(即显示的文本)在选项标签之外,则使用:
var quantity = document.querySelector(".quantityDropdown select")[document.querySelector(".quantityDropdown select").selectedIndex].innerHTML;
要获得选中的选项值,您需要在select元素上使用两个属性:options
和selectedIndex
来获得html选项元素,然后您可以获得值。
const dropdown = document.querySelector('.cart-quantity-picker')
console.log('selectedIndex', dropdown.selectedIndex)
console.log('options', dropdown.options)
console.log('selected', dropdown.options[dropdown.selectedIndex].value)
<div class="quantityDropdown quantityDropdown-cartItem">
<select id="qtySelect-61224b70-7b26-11e6-91d5-6921d6fe7421" class="cart-quantity-picker" data-orderitem="61224b70-7b26-11e6-91d5-6921d6fe7421">
<option value="1">1</option>
<option value="2" selected>2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
</div>
使用document.querySelector(".quantityDropdown select").selectedIndex
如果您需要获取'value':
var dropdown = document.getElementById("qtySelect-61224b70-7b26-11e6-91d5-6921d6fe7421");
var selValue = dropdown.options[dropdown.selectedIndex].value;
但是如果您想获得文本 ΝΟΤ 值,您可以这样做:
var dropdown = document.getElementById("qtySelect-61224b70-7b26-11e6-91d5-6921d6fe7421");
var selText = dropdown.options[dropdown.selectedIndex].text;
<select id="ddlViewBy">
<option value="1">test1</option>
<option value="2" selected="selected">test2</option>
<option value="3">test3</option>
</select>
获取值可以使用
document.querySelector('#qtySelect option:checked').value;
要获取选项内的实际文本,可以使用
document.querySelector('#qtySelect option:checked').text;
相关文章:
- 从选择下拉菜单中获取数据
- 如何在 ReactJS 中获取下拉菜单的选定值
- html表单上的许多选择(下拉菜单),如何只获取更改的选择的值
-
- 下拉菜单使用 Javascript 获取信息
- 如何从引导程序的下拉菜单中获取这两个值
- 使用 Javascript 从 html 下拉菜单中获取数字形式的值
- 从聚合物的下拉菜单中获取值
- 从依赖于下拉菜单的文本框中获取值,然后添加值
- 如何使用 javascript 中的 classList.contains 在引导下拉菜单中获取 li 类
- 需要按钮帮助从下拉菜单获取输入以进行重定向
- 从Javascript中的文本和下拉菜单中获取HTML输入
- 尝试从自定义的下拉菜单中获取特定值
- 单选按钮&下拉菜单(选择标记)-获取先前选定的菜单
- 如何使用javascript获取下拉菜单列表中项目的值
- 获取两个下拉菜单以在同一iframe中显示数据
- 如何从多选下拉菜单中获取值,并将其与POST一起发送
- 如何在ddSlick下拉菜单中获取所选值
- 如何获取要显示下拉菜单的选定值
- 在jQuery下拉菜单中获取第二个值
- 下拉菜单-获取下拉列表的所有值,看看是否加载值已经改变使用javascript