【发布时间】:2022-01-28 16:30:24
【问题描述】:
我在查找当前选定选项的值时遇到问题。
这是我迄今为止尝试过的......
const status = document.getElementById("task-status");
let value = status.options[status.selectedIndex].value;
console.log(value);
<label for="task-status">Status</label>
<select class="form-control" id="task-status" required>
<option selected disabled value="">Select status</option>
<option value="to do">To Do</option>
<option value="review">Review</option>
<option value="in progress">In Progress</option>
<option value="done">Done</option>
</select>
这不会在控制台上打印任何内容,也不知道为什么。
我最终要做的是检查用户选择的选项的值是否为“”(空) 如果是,则显示错误(选择无效)。 否则,如果用户选择的选项是 !"" (非空) 选择有效
值得注意的是,我正在使用 Bootstrap 及其表单。不确定这是否会产生影响。
我已经尝试了几个小时寻找解决方案,如果有人能提供帮助,我将不胜感激。谢谢
【问题讨论】:
-
您的代码按原样工作,但所选选项的值是空字符串。如果在选择新选项时需要该值,则需要在 select 元素上监听 change event。
-
哦,我明白了,让我看看,然后回复你。我确实对选择选项进行了硬编码,以便其中一个(不是默认选项)具有“选定”属性,并且仍然重新调整了一个空字符串。
-
Not reproducible,但这仅在页面加载时运行。
标签: javascript html forms twitter-bootstrap dom