下拉式值不会'不适用
Drop down values doesn't apply
本文关键字:不适用 更新时间:2023-09-26
all假设我有这样一个代码
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<script type="text/javascript" charset="utf-8">
var figure = document.getElementById("tool");
var selected = figure.options[figure.selectedIndex].value;
if(selected === "pencil"){
alert("Like a pencil");
}
if(selected === 'line'){
alert("Just drag and drop");
}
if(selected === "rect"){
alert("drag and drop for rect");
}
</script>
<p><label>Drawing tool: <select id="tool">
<option value="pencil">Pencil</option>
<option value="rect">Rectangle</option>
<option value="line">Line</option>
</select></label></p>
</body>
</html>
为什么,当我更改下拉列表的值时,它没有反应?也许我应该添加OnChange?但我不明白它是怎么工作的。。。感谢
您需要将该代码放入事件侦听器中,如:
figure.addEventListener('change', function(){
// your code...
});
把你的脚本放在文档的末尾。
您需要添加en事件处理程序。页面加载时,您当前的代码只运行一次。
window.onload(function() {
document.getElementById("tool").addEventListener('change',toolChangeEventHandler);
}
function toolChangeEventHandler() {
if(this.value === "pencil"){
alert("Like a pencil");
} else if(this.value === "line"){
alert("Just drag and drop");
} else if(this.value === "rect"){
alert("drag and drop for rect");
}
}
当您尝试添加事件侦听器时,需要onload事件来确保元素存在。
您的代码
var figure = document.getElementById("tool");
var selected = figure.options[figure.selectedIndex].value;
if(selected === "pencil"){
alert("Like a pencil");
}
if(selected === 'line'){
alert("Just drag and drop");
}
if(selected === "rect"){
alert("drag and drop for rect");
}
在加载页面时执行。要在选择更改时执行此代码,您可以使用如上所述的事件侦听器(并非所有浏览器中的方法都相同(,或者像这样设置回调(对于单个事件更简单(:
<select id="tool" onchange="onSelectChange(this);">...
其中onSelectChange是这样一个函数:
<script type="text/javascript">
var onSelectChange = function(elt) {
var selected = elt.options[elt.selectedIndex].value;
if(selected === "pencil"){
alert("Like a pencil");
}
if(selected === 'line'){
alert("Just drag and drop");
}
if(selected === "rect"){
alert("drag and drop for rect");
}
};
</script>
相关文章:
- CSS 类在特定场景中不适用
- ng类不适用
- Internet Explorer CSS类样式没有'如果存在具有相同类名的其他元素,则不适用
- 指令“链接”不适用,如我所愿
- 最小和最大轴值在具有对数轴的高图表中不适用
- 角度范围项目在项目更改后不适用
- 页面加载顺序有问题 - 样式不适用
- 更改可见性后,背景颜色不适用
- CSS3 透视在动画完成之前不适用
- 将最后一个子项移到第一个位置不适用jquery
- 当函数作为参数传递时,Javascript函数提升不适用
- 表格的替代颜色 css 不适用
- CSS宽度不'通过.html()克隆html代码时不适用
- 为什么在jQuery中使用focusout适用于Firefox,而使用addEventListener则不适用;t
- 样式不适用
- jQuery选择菜单验证器适用于FF和Chrome,但不适用IE
- 单选按钮'onclick'适用于Chrome和Firefox,但不适用IE
- 下拉式值不会'不适用
- JQuery ScrollTop适用于chrome,但不适用firefox
- Cytoscape.js:样式不适用