javascript操作select

来源:互联网 发布:生驹里奈 知乎 编辑:程序博客网 时间:2024/04/27 16:46


一、基础理解:
var e = document.getElementByIdx_x("selectId");
e.options = new Option("文本", "值");    //创建一个option对象,即在<select>标签中创建一个或多个<option value="值">文本</option>。options是一个数组,里面可存放多个<option value="值">文本</option>标签。

or var opt = new Option('北京','beijing');
    opt.setAttribute('selected', 'selected');
    $("names").appendChild(opt);

1、options数组的属性:
length -------长度属性
selectedIndex ------ 当前被选中的文本的索引值,此索引值是内存自动分配的(0,1,2,3....)对应(第一个文本值,第二个文本值,第三个文本值,第四个文本值.......)
2、单个option的属性(即obj.options[obj.selectedIndex]是指定的某个<option>标签):
text ===== 返回/指定文本
value =====返回/指定文本,与<option value="...">一致
index ======返回下标
selected======返回/指定该对象是否被选中,指定true or false可动态改变选中项
defaultSelected =====返回该对象默认是否被选中,true/false
3、option的方法:
增加一个<option>标签======obj.options.add(new("文本", "值"))
删除一个<option>标签======obj.options.remove(obj.selectedIndex);
获取一个<option>标签======obj.options[obj.selectedIndex].text ;
修改一个<option>标签======obj.options[obj.selectedIndex] = new Option("新文本", "值") ;
删除所有<option>标签======obj.options.length = 0 ;
获取一个<option>标签的值====obj.options[obj.selectedIndex].value ;
注意:
obj.option中的option不需要大写
new Option中的option需要大写
实例/////////////////////////////////////////////////////////////////////////////////////////////////////////////////

1 检测是否有选中
if(objSelect.selectedIndex > -1) {
//说明选中
} else {
//说明没有选中
}

2.动态创建select

function createSelect(){

var mySelect = document.createElement_x("select");
mySelect.id = "mySelect";
document.body.appendChild(mySelect);
}

3.添加选项option

function addOption(){

//根据id查找对象,
var obj=document.getElementByIdx_x('mySelect');

//添加一个选项
obj.add(new Option("文本","值"));
}

4.删除所有选项option

function removeAll(){
var obj=document.getElementByIdx_x('mySelect');

obj.options.length=0;

}

5.删除一个选项option

function removeOne(){
var obj=document.getElementByIdx_x('mySelect');

//index,要删除选项的序号,这里取当前选中选项的序号

var index=obj.selectedIndex;
obj.options.remove(index);
}

6.获得选项option的值

var obj=document.getElementByIdx_x('mySelect');

var index=obj.selectedIndex; //序号,取当前选中选项的序号

var val = obj.options[index].value;

7.获得选项option的文本

var obj=document.getElementByIdx_x('mySelect');

var index=obj.selectedIndex; //序号,取当前选中选项的序号

var val = obj.options[index].text;

8.修改选项option

var obj=document.getElementByIdx_x('mySelect');

var index=obj.selectedIndex; //序号,取当前选中选项的序号

var val = obj.options[index]=new Option("新文本","新值");

9.删除select

function removeSelect(){
var mySelect = document.getElementByIdx_x("mySelect");
mySelect.parentNode.removeChild(mySelect);

********************************************************************************

//设定那个选项被选中 
select.options[i].selected=true 
select.value="value" 
select.selectedIndex = index; 
//创建新的Option对象 
new Option(text,value) 
new option(text,value,defaultSelected,selected 
text:字符串,指定option对象的text属性(即<option></option>之间的文字) 
value:字符串,指定option对象的value属性
defaultSelected:布尔值,指定option对象的defaultSelected属性 
selected:布尔值,指定option对象的selected属性 

//向select中增加Option 
select.add(new Option(text,value)) 

//删除 
select.options.remove(index) 
//一次性删除全部 
select.length = 0;

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
  2. <HTML>  
  3.  <HEAD>  
  4.   <TITLE> New Document </TITLE>  
  5.   <META NAME="Generator" CONTENT="EditPlus">  
  6.   <META NAME="Author" CONTENT="">  
  7.   <META NAME="Keywords" CONTENT="">  
  8.   <META NAME="Description" CONTENT="">  
  9.    
  10.  </HEAD>  
  11.   
  12.  <BODY>  
  13.   <select name="actorname" id="actor">  
  14.     <option value="all">全部</option>  
  15.     <option value="hstf">黑色头发</option>  
  16.     <option value="zstf">紫色头发</option>  
  17.     <option value="bj">北京</option>  
  18.     <option value="hjyy">海军医院</option>  
  19.     <option value="kjyy">空军医院</option>  
  20.     <option value="ljyy">陆军医院</option>  
  21.   </select>&nbsp;&nbsp;&nbsp; &nbsp;  
  22.  </BODY>  
  23.   <script>  
  24. function selectValue(sId,value){  
  25.     var s = document.getElementById(sId);  
  26.     var ops = s.options;  
  27.     for(var i=0;i<ops.length; i++){  
  28.         var tempValue = ops[i].value;  
  29.         if(tempValue == value)  
  30.         {  
  31.             ops[i].selected = true;  
  32.         }  
  33.     }  
  34. }  
  35.   
  36. selectValue('actor','hstf');  
  37.   </script>  
  38. </HTML>  


原创粉丝点击