javascript - 如何在没有按钮的下拉菜单上使用onclick
问题描述
我想进行一些更改,例如显示/隐藏选项或在选择下拉列表中的选项时添加图像源,但无法使该功能以某种方式工作......是否有某种类型的技巧可以在没有按钮的情况下做到这一点?
相关代码部分:
<select id="yrank" class="btn btn-primary" style="margin-right: 10px;">
<option selected="selected" >Select</option>
<option onclick="yRankFunc()" value="iron">Iron</option>
<option value="bronze">Bronze</option>
<option value="silver">Silver</option>
<option value="gold">Gold</option>
<option value="platinum">Platinum</option>
<option value="diamond">Diamond</option>
</select>
<script>
var yRankPic = document.getElementById("yRankPic");
var nRankPic = document.getElementById("nRankPic");
var yrankNo = document.getElementById("yRankNo").value;
var yrank = document.getElementById("yrank").value;
function yRankFunc(){
console.log(yrank);
}
</script>
解决方案
当您想要更新的值时,您需要读取该值。您当前在页面呈现时读取该值。您还想在 select 和方法中使用 change 事件,看看选择了什么。
var yrank = document.getElementById("yrank");
function yRankFunc() {
if (yrank.value === 'bronze') {
console.log('do something');
} else {
console.log(yrank.value);
}
}
<select id="yrank" class="btn btn-primary" style="margin-right: 10px;" onchange="yRankFunc()">
<option selected="selected">Select</option>
<option value="iron">Iron</option>
<option value="bronze">Bronze</option>
<option value="silver">Silver</option>
<option value="gold">Gold</option>
<option value="platinum">Platinum</option>
<option value="diamond">Diamond</option>
</select>
推荐阅读
- c - 在函数后声明全局变量
- maven - 如何仅为运行管道缓存作业结果?
- swift - 如何将上下文菜单应用于 SwiftUI 列表行中的按钮?
- android - 如何在 React Native 中访问嵌套的 Text 元素中的链接?
- python-3.x - AutoML colab 笔记本 ImportError:缺少可选依赖项“gcsfs”
- python - Python - 如何从 bs4 输出中提取数字
- hyperledger-fabric - 将 Hyperledger 结构从 1.4.2 升级到 2.0
- python - spaCy SPECIAL-1 令牌覆盖后缀规则导致注释错位
- c# - 十六进制字符串到 bool[] C#
- excel - 如果值大于相邻列的单元格,如何计算列单元格中的值