浅谈下拉菜单中的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 中String.match()与RegExp.exec()的区别说明
Jan 10 Javascript
Javascript让DEDECMS告别手写Tag
Sep 01 Javascript
js完美解决IE6不支持position:fixed的bug
Apr 24 Javascript
第五篇Bootstrap 排版
Jun 21 Javascript
Javascript获取background属性中url的值
Oct 17 Javascript
基于jQuery实现Accordion手风琴自定义插件
Oct 13 Javascript
JavaScript原生实现观察者模式的示例
Dec 15 Javascript
React-native桥接Android原生开发详解
Jan 17 Javascript
IntelliJ IDEA编辑器配置vue高亮显示
Sep 26 Javascript
实例讲解JavaScript 计时事件
Jul 04 Javascript
Vue解决echart在element的tab切换时显示不正确问题
Aug 03 Javascript
在vue中配置不同的代理同时访问不同的后台操作
Sep 11 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
PHP5.0正式发布 不完全兼容PHP4 新增多项功能
2006/10/09 PHP
PHP中的日期加减方法示例
2014/08/21 PHP
bcastr2.0 通用的图片浏览器
2006/11/22 Javascript
jQuery 1.5最新版本的改进细节分析
2011/01/19 Javascript
javascript的console.log()用法小结
2012/05/31 Javascript
Js点击弹出下拉菜单效果实例
2013/08/12 Javascript
js switch case default 的用法示例介绍
2013/10/23 Javascript
JavaScript中用于生成随机数的Math.random()方法
2015/06/15 Javascript
JS实现的简单鼠标跟随DiV层效果完整实例
2015/10/31 Javascript
jQuery实现可拖拽的许愿墙效果【附demo源码下载】
2016/09/14 Javascript
js实现图片上传预览原理分析
2017/07/13 Javascript
解决layui前端框架 form表单,table表等内置控件不显示的问题
2018/08/19 Javascript
Vue常见面试题整理【值得收藏】
2018/09/20 Javascript
JavaScript高阶教程之“==”隐藏下的类型转换
2019/04/11 Javascript
JSON获取属性值方法代码实例
2020/06/30 Javascript
[01:35]辉夜杯战队访谈宣传片—iG.V
2015/12/25 DOTA
[01:05]主宰至宝剑心之遗
2017/03/16 DOTA
[01:04:05]VG vs Newbee 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python实现在tkinter中使用matplotlib绘制图形的方法示例
2018/01/18 Python
详解python3 + Scrapy爬虫学习之创建项目
2019/04/12 Python
python 对字典按照value进行排序的方法
2019/05/09 Python
Python Merge函数原理及用法解析
2020/09/16 Python
python邮件中附加文字、html、图片、附件实现方法
2021/01/04 Python
使用CSS3实现圆角,阴影,透明
2014/12/23 HTML / CSS
CSS3 @media的基本用法总结
2019/09/10 HTML / CSS
HTML5注册页面示例代码
2014/03/27 HTML / CSS
html2 canvas生成清晰的图片实现打印功能
2019/09/23 HTML / CSS
俄罗斯皮肤健康中心:Pharmacosmetica.ru
2020/02/22 全球购物
JAVA高级程序员面试题
2013/09/06 面试题
水利学院求职自荐书
2014/02/01 职场文书
文员岗位职责范本
2014/03/08 职场文书
《灰椋鸟》教学反思
2014/04/27 职场文书
社保代办委托书怎么写
2014/10/06 职场文书
党员对十八届四中全会的期盼思想汇报范文
2014/10/17 职场文书
2015年新农合工作总结
2015/03/30 职场文书
交通安全宣传标语(100条)
2019/08/22 职场文书