文章目录
HTML选项框的设计
在前端页面的设计中,
多选框
的设计用select
标签完成实现
- 全部选项都显示的选项框
html
<form>
<select multiple="multiple">
<option></option>
<option>奥特曼</option>
<option>奥特曼1</option>
<option>奥特曼2</option>
</select>
</form>
效果:
- 展示只有一个块,选择通过下拉列表选择
html
<select name="fruit">
<option value="apple">苹果</option>
<option value="banana">香蕉</option>
<option value="orange">橙子</option>
</select>
效果图:
JS根据不同的选项框对应出不同的事件
- 先找对
select
标签对应的元素
- 再找到
select
标签被选中的索引
- 然后根据索引和标签进行设置不同的
事件
- 简易流程:
html
var mySelect = document.getElementById("testSelect"); //定位id(获取select)
var index = mySelect.selectedIndex; //选中索引(选取select中option选中的第几个)
var text = mySelect.options[index].text; //获取选中文本
var value = mySelect.options[index].value; //获取选中值
mySelect.options[index].selected //判断select中的某个option是否选中,true为选中,false为未选中
一个实际例子:
html
<html>
<head>
<script>
function sel() {
var mySelect = document.getElementById("testSelect"); //定位id(获取select)
var index = mySelect.selectedIndex; //选中索引(选取select中option选中的第几个)
var text = mySelect.options[index].text; //获取选中文本,即option标签对之间的文字
var value = mySelect.options[index].value; //获取选中值
document.getElementById("show_index").innerHTML = index;
document.getElementById("show_text").innerHTML = text;
document.getElementById("show_value").innerHTML = value;
if (mySelect.options[2].selected) { //注意index是从0开始的
document.getElementById("show_isSelected").innerHTML = "选中了";
} else {
document.getElementById("show_isSelected").innerHTML = "没选中";
}
}
</script>
</head>
<body>
<select id="testSelect" onchange="sel()">
<option id="op_1" value="Deep Learning">深度学习</option>
<option id="op_2" value="Machine Learning">机器学习</option>
<option id="op_3" value="Data Mining">数据挖掘</option>
<option id="op_4" value="Image Processing">图像处理</option>
</select>
<br>
<hr><font color="red">选中的option索引:</font><p id="show_index"></p>
<hr><font color="red">选中的option文本:</font><p id="show_text"></p>
<hr><font color="red">选中的option的值:</font><p id="show_value"></p>
<hr><font color="red">"数据挖掘"选项是否被选中:</font><p id="show_isSelected"></p>
</body>
</html>
效果图: