select 中option的使用以及动态增加select
2013-10-18 11:19
375 查看
<html>
<head>
<SCRIPT LANGUAGE="JavaScript">
<!--
//oSelect 列表的底部添加了一个新选项
function onload(){
var oOption = document.createElement("OPTION");
oOption.text="Ferrari";
oOption.value="4";
oSelect.add(oOption);
}
function fnChange(){
oData.value+=oCars.options[oCars.selectedIndex].text + " ";
}
//-->
</SCRIPT>
</head>
<body onload="onload()">
<!--手工添加一个Select-->
<!--1 uses the SELECT element to create a drop-down list box-->
<SELECT NAME="Cats" SIZE="1">
<OPTION VALUE="1">Calico
<OPTION VALUE="2">Tortie
<OPTION VALUE="3" SELECTED>Siamese
</SELECT>
<P>
<!--2 select 元素创建了多项选择列表框,方法是设置了 SIZE 和 MULTIPLE 标签属性。要获得多项选择列表框的选中选项,则须遍历 options 集合并检查 SELECTED 是否被设为 true。-->
<SELECT ID="oSelect" NAME="Cars" SIZE="3" MULTIPLE> <!--此处设置了3和multiple-->
<OPTION VALUE="1" SELECTED>BMW
<OPTION VALUE="2">Porsche
<OPTION VALUE="3" SELECTED>Mercedes
</SELECT>
<P>
<!--3 以下演示Option的用法-->
<SELECT ID="oCars" SIZE="1" onchange="fnChange()">
<OPTION VALUE="1">宝马
<OPTION VALUE="2">保时捷
<OPTION VALUE="3" SELECTED>大奔
</SELECT>
<P>
<TEXTAREA ID="oData"></TEXTAREA>
</body>
</html>
附:一些Select的技巧
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("文本","值"));
}
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);
}
9.设置select optin被中
function removeSelect(){
// 向办件人员下拉列表动态添加员工
for ( var i = 0; i < json.length; i++) {
var newOption = new Option(json[i].empname, json[i].empid, i);
//向办件人员下拉列表添加员工信息
objDeal.options.add(newOption);
//客户业务员的Id不为空
if(empbyDealEmpId!="" || empbyDealEmpId!=0){
//员工id等于下拉列表中的值,则下拉列表被选中
if(empbyDealEmpId==objDeal.options[i].value){
//判断此下拉列表被选中
objDeal.options[i].selected=true;
}
}
}
}
1
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
1 检测是否有选中 2
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
if(objSelect.selectedIndex > -1)
![](http://www.cnblogs.com/Images/dot.gif)
{ 3
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//说明选中 4
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
} else
![](http://www.cnblogs.com/Images/dot.gif)
{ 5
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//说明没有选中 6
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
} 7
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2 删除被选中的项 9
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
objSelect.options[objSelect.selectedIndex] = null;10
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
11
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3 增加项12
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
objSelect.options[objSelect.length] = new Option("你好","hello");13
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4 修改所选择中的项15
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
objSelect.options[objSelect.selectedIndex] = new Option("你好","hello");16
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5得到所选择项的文本18
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
objSelect.options[objSelect.selectedIndex].text;19
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
20
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6 得到所选择项的值21
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
objSelect.options[objSelect.selectedIndex].value;22
<head>
<SCRIPT LANGUAGE="JavaScript">
<!--
//oSelect 列表的底部添加了一个新选项
function onload(){
var oOption = document.createElement("OPTION");
oOption.text="Ferrari";
oOption.value="4";
oSelect.add(oOption);
}
function fnChange(){
oData.value+=oCars.options[oCars.selectedIndex].text + " ";
}
//-->
</SCRIPT>
</head>
<body onload="onload()">
<!--手工添加一个Select-->
<!--1 uses the SELECT element to create a drop-down list box-->
<SELECT NAME="Cats" SIZE="1">
<OPTION VALUE="1">Calico
<OPTION VALUE="2">Tortie
<OPTION VALUE="3" SELECTED>Siamese
</SELECT>
<P>
<!--2 select 元素创建了多项选择列表框,方法是设置了 SIZE 和 MULTIPLE 标签属性。要获得多项选择列表框的选中选项,则须遍历 options 集合并检查 SELECTED 是否被设为 true。-->
<SELECT ID="oSelect" NAME="Cars" SIZE="3" MULTIPLE> <!--此处设置了3和multiple-->
<OPTION VALUE="1" SELECTED>BMW
<OPTION VALUE="2">Porsche
<OPTION VALUE="3" SELECTED>Mercedes
</SELECT>
<P>
<!--3 以下演示Option的用法-->
<SELECT ID="oCars" SIZE="1" onchange="fnChange()">
<OPTION VALUE="1">宝马
<OPTION VALUE="2">保时捷
<OPTION VALUE="3" SELECTED>大奔
</SELECT>
<P>
<TEXTAREA ID="oData"></TEXTAREA>
</body>
</html>
附:一些Select的技巧
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("文本","值"));
}
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);
}
9.设置select optin被中
function removeSelect(){
// 向办件人员下拉列表动态添加员工
for ( var i = 0; i < json.length; i++) {
var newOption = new Option(json[i].empname, json[i].empid, i);
//向办件人员下拉列表添加员工信息
objDeal.options.add(newOption);
//客户业务员的Id不为空
if(empbyDealEmpId!="" || empbyDealEmpId!=0){
//员工id等于下拉列表中的值,则下拉列表被选中
if(empbyDealEmpId==objDeal.options[i].value){
//判断此下拉列表被选中
objDeal.options[i].selected=true;
}
}
}
}
1
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
1 检测是否有选中 2
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
if(objSelect.selectedIndex > -1)
![](http://www.cnblogs.com/Images/dot.gif)
{ 3
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//说明选中 4
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
} else
![](http://www.cnblogs.com/Images/dot.gif)
{ 5
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//说明没有选中 6
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
} 7
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2 删除被选中的项 9
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
objSelect.options[objSelect.selectedIndex] = null;10
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
11
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3 增加项12
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
objSelect.options[objSelect.length] = new Option("你好","hello");13
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4 修改所选择中的项15
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
objSelect.options[objSelect.selectedIndex] = new Option("你好","hello");16
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5得到所选择项的文本18
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
objSelect.options[objSelect.selectedIndex].text;19
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
20
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6 得到所选择项的值21
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
objSelect.options[objSelect.selectedIndex].value;22
相关文章推荐
- 使用js 在IE和火狐firfox 里动态增加select 的option
- 使用js 在IE和火狐firfox 里动态增加select 的option
- 使用Python创建MySQL数据库实现字段动态增加以及动态的插入数据
- Jquery multiselect 多选下拉框与ajax配合使用,动态拼接option。初始化默认选中多个,增加搜索框
- KVO的使用以及 objc runtime 动态增加属性
- 使用JAVASCRIPT实现动态增加、删除选择项
- 在使用WSAAsyncSelect中的搜集到的一些资料以及发现的一些问题
- 给select下拉框增加option发现的问题,以及js怎么设置中断
- SQL:如何在LIKE语句中使用参数,以及动态执行SQL语句
- mysql中使用grant增加用户和权限,以及mysq加密函数
- 14章类型信息-之类型转换前先做检查--之使用类字面常量--类名.class--以及动态instanceof(isInstance方法)----递归计数(计算各个类的个数)
- 问 如何使用css将select的边框以及右边的小三角形去掉?
- rails中使用form.select创建动态的下拉菜单 推荐
- 使用Jquery动态的实现增加/删除单选题
- Oracle 查看表空间使用情况以及增加表空间
- flask-admin章节二:wtforms的使用以及在数据库场景中使用QuerySelectField代替SelectField
- DataTable 使用Select方法查询并排序,以及【拼接转义符的问题】
- 使用Javascript动态增加,删除表格(使用DHTML对象模型)
- struts2如何动态调用action的方法以及使用json插件范围json格式的javascript对象
- select 下拉菜单Option对象使用add(elements,index)方法动态添加