浅谈下拉菜单中的Option对象


Posted in Javascript onMay 10, 2015

1.创建Option对象

1.1 var optionEle1 = document.createElement('option');

1.2 var optionEle2 = new Option(text, value, defaultSelected, selected);

2.options属性

2.1 select.options返回select标签下面的Option对象的集合

3.清空下拉菜单

3.1 利用for循环删除,注意数组长度的动态变化

3.2 select.options.length = 0;

4.应用

<html> 
<head> 
<script language="javascript"> 
function number(){ 
var obj = document.getElementById("mySelect"); 
//obj.options[obj.selectedIndex] = new Option("我的吃吃","4");//在当前选中的那个的值中改变 
//obj.options.add(new Option("我的吃吃","4"));再添加一个option 
//alert(obj.selectedIndex);//显示序号,option自己设置的 
//obj.options[obj.selectedIndex].text = "我的吃吃";更改值 
//obj.remove(obj.selectedIndex);删除功能 
} 
</script> 
</head> 
<body> 
<select id="mySelect"> 
<option>我的包包</option> 
<option>我的本本</option> 
<option>我的油油</option> 
<option>我的担子</option> 
</select> 
<input type="button" name="button" value="查看结果" onclick="number();"> 
</body> 
</html>

1.动态创建select

function createSelect(){ 
 
    var mySelect = document.createElement("select");  
mySelect.id = "mySelect";  
document.body.appendChild(mySelect); 
}

2.添加选项option

function addOption(){ 
 
     //根据id查找对象, 
var obj=document.getElementById('mySelect'); 
 
      //添加一个选项 
obj.add(new   Option("文本","值"));  //这个只能在IE中有效 
obj.options.add(new Option("text","value")); //这个兼容IE与firefox 
}

3.删除所有选项option

function removeAll(){ 
var obj=document.getElementById('mySelect'); 
 
obj.options.length=0; 
 
   }

4.删除一个选项option

function removeOne(){ 
var obj=document.getElementById('mySelect'); 
 
      //index,要删除选项的序号,这里取当前选中选项的序号 
 
    var index=obj.selectedIndex; 
obj.options.remove(index);  
}

5.获得选项option的值

var obj=document.getElementById('mySelect'); 
 
var index=obj.selectedIndex; //序号,取当前选中选项的序号 
 
var val = obj.options[index].value;

6.获得选项option的文本

var obj=document.getElementById('mySelect'); 
 
var index=obj.selectedIndex; //序号,取当前选中选项的序号 
 
var val = obj.options[index].text;

7.修改选项option

var obj=document.getElementById('mySelect'); 
 
var index=obj.selectedIndex; //序号,取当前选中选项的序号 
 
var val = obj.options[index]=new Option("新文本","新值");

8.删除select

function removeSelect(){ 
var mySelect = document.getElementById("mySelect"); 
mySelect.parentNode.removeChild(mySelect); 
}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//ZH-CN" "http://www.w3.org/TR/html4/strict.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html"> 
<head> 
<script language=JavaScript> 
function $(id) 
{ 
return document.getElementById(id) 
} 
 
function show() 
{ 
var selectObj=$("area") 
var myOption=document.createElement("option") 
myOption.setAttribute("value","10") 
myOption.appendChild(document.createTextNode("上海")) 
 
var myOption1=document.createElement("option") 
myOption1.setAttribute("value","100") 
myOption1.appendChild(document.createTextNode("南京")) 
 
selectObj.appendChild(myOption) 
selectObj.appendChild(myOption1) 
 
} 
 
function choice() 
{ 
var index=$("area").selectedIndex; 
var val=$("area").options[index].getAttribute("value") 
 
if(val==10) 
{ 
var i=$("context").childNodes.length-1; 
var remobj=$("context").childNodes[i]; 
remobj.removeNode(true) 
var sh=document.createElement("select") 
sh.add(new Option("浦东新区","101")) 
sh.add(new Option("黄浦区","102")) 
sh.add(new Option("徐汇区","103")) 
sh.add(new Option("普陀区","104")) 
$("context").appendChild(sh) 
 
} 
 
if(val==100) 
{ 
var i=$("context").childNodes.length-1; 
var remobj=$("context").childNodes[i]; 
remobj.removeNode(true) 
var nj=document.createElement("select") 
nj.add(new Option("玄武区","201")) 
nj.add(new Option("白下区","202")) 
nj.add(new Option("下关区","203")) 
nj.add(new Option("栖霞区","204")) 
$("context").appendChild(nj) 
} 
} 
 
function calc() 
{ 
var x=$("context").childNodes.length-1; 
alert(x) 
 
} 
 
function remove() 
{ 
var i=$("context").childNodes.length-1; 
var remobj=$("context").childNodes[i]; 
remobj.removeNode(true) 
} 
</script> 
<body> 
 
<div id="context"> 
<select id="area" on  
change="choice()"> 
</select> 
</div> 
<input type=button value="显示" onclick="show()"> 
<input type=button value="计算结点" onclick="calc()"> 
<input type=button value="删除" onclick="remove()"> 
</body> 
</html>

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
FileUpload 控件 禁止手动输入或粘贴的实现代码
Apr 07 Javascript
javascript时区函数介绍
Sep 14 Javascript
js实现单行文本向上滚动效果实例代码
Nov 28 Javascript
httpclient模拟登陆具体实现(使用js设置cookie)
Dec 11 Javascript
鼠标经过tr时,改变tr当前背景颜色
Jan 13 Javascript
javascript获取元素偏移量的方法有哪些
Jun 24 Javascript
返回顶部按钮响应滚动且动态显示与隐藏
Oct 14 Javascript
jquery操作checkbox火狐下第二次无法勾选的解决方法
Oct 10 Javascript
利用JavaScript如何查询某个值是否数组内
Jul 30 Javascript
Vue 项目部署到服务器的问题解决方法
Dec 05 Javascript
webpack4之如何编写loader的方法步骤
Jun 06 Javascript
vue下axios拦截器token刷新机制的实例代码
Jan 17 Javascript
AngularJS基础学习笔记之控制器
May 10 #Javascript
AngularJS基础学习笔记之指令
May 10 #Javascript
AngularJS基础学习笔记之表达式
May 10 #Javascript
AngularJS基础学习笔记之简单介绍
May 10 #Javascript
JS实现仿QQ聊天窗口抖动特效
May 10 #Javascript
javascript为按钮注册回车事件(设置默认按钮)的方法
May 09 #Javascript
深入浅出分析javaScript中this用法
May 09 #Javascript
You might like
[EPIC] Larva vs Flash ZvT @ Crossing Field [2017-10-09]
2020/03/17 星际争霸
PHP 获取文件路径(灵活应用__FILE__)
2013/02/15 PHP
推荐一款PHP+jQuery制作的列表分页的功能模块
2014/10/14 PHP
php-fpm重启导致的程序执行中断问题详解
2019/04/29 PHP
很全的显示阴历(农历)日期的js代码
2009/01/01 Javascript
javascript 可以拖动的DIV(二)
2009/06/26 Javascript
javascript采用数组实现tab菜单切换效果
2012/12/12 Javascript
jQuery限制图片大小的方法
2016/05/25 Javascript
jQuery 中ajax异步调用的四种方式
2016/06/28 Javascript
js css3实现图片拖拽效果
2017/03/04 Javascript
vue2.0 elementUI制作面包屑导航栏
2018/02/22 Javascript
vue 组件高级用法实例详解
2018/04/11 Javascript
安装Node.js并启动本地服务的操作教程
2018/05/12 Javascript
使用Vue实现简单计算器
2020/02/25 Javascript
[00:32]DOTA2上海特级锦标赛 Ehome战队宣传片
2016/03/03 DOTA
python自动翻译实现方法
2016/05/28 Python
K-means聚类算法介绍与利用python实现的代码示例
2017/11/13 Python
使用python爬虫实现网络股票信息爬取的demo
2018/01/05 Python
使用Python写一个量化股票提醒系统
2018/08/22 Python
如何用python写一个简单的词法分析器
2018/12/18 Python
在jupyter notebook 添加 conda 环境的操作详解
2020/04/10 Python
6种非常炫酷的CSS3按钮边框动画特效
2016/03/16 HTML / CSS
html5 canvas手势解锁源码分享
2020/01/07 HTML / CSS
国际领先的学术出版商:Springer
2017/01/11 全球购物
Expedia挪威官网:酒店、机票和租车
2018/03/03 全球购物
英国最大的滑板品牌选择:Route One
2019/09/22 全球购物
聚网科技C++面试笔试题
2015/09/01 面试题
消防战士优秀事迹材料
2014/02/13 职场文书
村居抓节水倡议书
2014/05/19 职场文书
小学绿色学校申报材料
2014/08/23 职场文书
公司领导班子召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
2014年医药代表工作总结
2014/11/22 职场文书
2015年房产销售工作总结范文
2015/05/22 职场文书
于丹论语心得观后感
2015/06/15 职场文书
孟佩杰观后感
2015/06/17 职场文书
《吃水不忘挖井人》教学反思
2016/02/22 职场文书