浅谈下拉菜单中的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 相关文章推荐
javascript第一课
Feb 27 Javascript
javascript中onclick(this)用法介绍
Apr 19 Javascript
node.js中的emitter.emit方法使用说明
Dec 10 Javascript
用JavaScript实现页面重定向功能的教程
Jun 04 Javascript
谈谈JavaScript类型系统之Math
Jan 06 Javascript
JS查找字符串中出现最多的字符及个数统计
Feb 04 Javascript
详解用vue.js和laravel实现微信授权登陆
Jun 23 Javascript
Vue 项目部署到服务器的问题解决方法
Dec 05 Javascript
vue 纯js监听滚动条到底部的实例讲解
Sep 03 Javascript
es6中reduce的基本使用方法
Sep 10 Javascript
vue+elementui 对话框取消 表单验证重置示例
Oct 29 Javascript
基于原生JS封装的Modal对话框插件的示例代码
Sep 09 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
浅析php过滤html字符串,防止SQL注入的方法
2013/07/02 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
2018/08/15 PHP
laravel框架中间件 except 和 only 的用法示例
2019/07/12 PHP
thinkphp 5框架实现登陆,登出及session登陆状态检测功能示例
2019/10/10 PHP
jQuery之ajax删除详解
2014/02/27 Javascript
wap图片滚动特效无css3元素纯js脚本编写
2014/08/22 Javascript
JS弹出可拖拽可关闭的div层完整实例
2015/02/13 Javascript
ECMAScript5(ES5)中bind方法使用小结
2015/05/07 Javascript
js实现仿MSN带关闭功能的右下角弹窗代码
2015/09/04 Javascript
微信支付如何实现内置浏览器的H5页面支付
2015/09/25 Javascript
[原创]Javascript 实现广告后加载 可加载百度谷歌联盟广告
2016/05/11 Javascript
js处理层级数据结构的方法小结
2017/01/17 Javascript
vue2.0在没有dev-server.js下的本地数据配置方法
2018/02/23 Javascript
详解ESLint在Vue中的使用小结
2018/10/15 Javascript
微信小程序在其他页面监听globalData中值的变化
2019/07/15 Javascript
vue实现放大镜效果
2020/09/17 Javascript
使用JavaScript实现贪吃蛇游戏
2020/09/29 Javascript
Python Web框架Flask中使用七牛云存储实例
2015/02/08 Python
Python字符编码判断方法分析
2016/07/01 Python
python+matplotlib绘制饼图散点图实例代码
2018/01/20 Python
详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数
2018/04/18 Python
Python实现的删除重复文件或图片功能示例【去重】
2019/04/23 Python
python编程进阶之类和对象用法实例分析
2020/02/21 Python
Python爬虫爬取电影票房数据及图表展示操作示例
2020/03/27 Python
python实现控制台输出彩色字体
2020/04/05 Python
python反爬虫方法的优缺点分析
2020/11/25 Python
Python GUI库Tkiner使用方法代码示例
2020/11/27 Python
美国孕妇装购物网站:Motherhood Maternity
2019/09/22 全球购物
护理职业应聘自荐书
2013/09/29 职场文书
高中的自我鉴定
2013/12/16 职场文书
党员违纪检讨书
2014/02/18 职场文书
摄影专业毕业生求职信
2014/08/05 职场文书
计划生育证明格式及范本
2014/10/09 职场文书
交通安全教育心得体会
2016/01/15 职场文书
Python开发五子棋小游戏
2022/05/02 Python
Windows Server 2016服务器用户管理及远程授权图文教程
2022/08/14 Servers