`
习惯在马桶上思考
  • 浏览: 114903 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

javascript select option对象总结

    博客分类:
  • JS
阅读更多
一基础理解:

var e = document.getElementById("selectId");

e. options= new Option("文本","值") ;

//创建一个option对象,即在<select>标签中创建一个或多个<option value="值">文本</option>

//options是个数组,里面可以存放多个<option value="值">文本</option>这样的标签

1:options[ ]数组的属性:

length属性---------长度属性

selectedIndex属性--------当前被选中的框中的文本的索引值,此索引值是内存自动分配的(0,1,2,3.....)对应(第一个文本值,第二个文本值,第三个文本值,第四个文本值..........)

2:单个option的属性(---obj.options[obj.selecedIndex]是指定的某个<option>标签,是一个---)

text属性---------返回/指定 文本

value属性------返回/指定 值,与<options value="...">一致。

index属性-------返回下标,

selected 属性-------返回/指定该对象是否被选中.通过指定 true 或者 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

注意:

a:上面的写的是如这样类型的方法obj.options.function()而不写obj.funciton,是因为为了考虑在IE和FF 下的兼容,如obj.add()只能在IE中有效.

b:obj.option中的option不需要大写,new Option中的Option需要大写

二 应用

<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>




根据这些东西,自己用JQEURY AJAX+JSON实现了一个小功能如下:

JS代码:(只取了于SELECT相关的代码)
/**
   * @description  构件联动下拉列表 (用JQUERY 的AJAX配合JSON实现)
   * @prarm  selectId 下拉列表的ID
   * @prarm  method  要调用的方法名称
   * @prarm  temp 此处存放软件ID
   * @prarm  url  要跳转的地址
   */
function  linkAgeJson(selectId,method,temp,url){   
      $j.ajax({    
            type: "get",//使用get方法访问后台
            dataType: "json",//返回json格式的数据
            url: url,//要访问的后台地址
            data: "method=" + method+"&temp="+temp,//要发送的数据        
            success: function(msg){//msg为返回的数据,在这里做数据绑定
                var data = msg.lists;
                coverJsonToHtml(selectId,data);             
            }
        });
}

/**
* @description  将JSON数据转换成HTML数据格式
* @prarm selectId 下拉列表的ID
* @prarm  nodeArray 返回的JSON数组
*
*/
function coverJsonToHtml(selectId,nodeArray){
//get select
   var tempSelect=$j("#"+selectId);
   //clear select value
   isClearSelect(selectId,'0');   
var tempOption=null;
for(var i=0;i<nodeArray.length;i++){
//create select Option
tempOption= $j('<option value="'+nodeArray[i].dm+'">'+nodeArray[i].mc+'</option> ');
//put Option to select
tempSelect.append(tempOption);
        }
        // 获取退化构件列表
       getCpgjThgl(selectId,'thgjDm');
   }
   /**
   * @description  清空下拉列表的值
   * @prarm selectId 下拉列表的ID
   * @prarm index 开始清空的下标位置
   */
  function isClearSelect(selectId,index){
     var length=document.getElementById(selectId).options.length;
while(length!=index){
      //长度是在变化的,因为必须重新获取 
          length=document.getElementById(selectId).options.length;
          for(var i=index;i<length;i++)
             document.getElementById(selectId).options.remove(i);
         length=length/2;
     }
   }
     
/**
* @description 获取退化构件列表
* @prarm  selectId1 引用软件下拉列表的ID
* @prarm  selectId2 退化构件下拉列表的ID
*/
   function getCpgjThgl(selectId1,selectId2){
   var obj1=document.getElementById(selectId1);//引用软件下拉列表
   var obj2=document.getElementById(selectId2);//退化构件下拉列表
   var len=obj1.options.length;
  //当引用软件列表长度等于1时返回,不做操作
   if(len==1){
          return false;
   }
   //清空下拉列表的值,两种方式都可以
  // isClearSelect(selectId2,'1'); 
            document.getElementById(selectId2).length=1;
   for(var i=0;i<len; i++){
var option= obj1.options[i]; 
//引用软件被选中项不加入
if(i!=obj1.selectedIndex){
//克隆OPTION并添加到SELECT中  
obj2.appendChild(option.cloneNode(true));

}

   } 




HTML代码:

<TABLE width="100%" border=0 align="left" cellPadding=0 cellSpacing=1>
  <tr>
<td  class="Search_item_18">  <span class="Edit_mustinput">*</span>引用软件:</td>
<td  class="Search_content_82">
<input name="yyrjMc" id="yyrjMc" type="text" class="Search_input" tabindex="3"  size="30" >
<input name="yyrjDm" id="yyrjDm" type="hidden" >
<input type="button" class="Search_button_select"
onClick="linkAgeTree('linkage','yyrjtree','yyrjMc','yyrjDm','linkageTree','1');" value="选择...">
</td>
  </tr>
  <tr>
<td class="Search_item"> <span class="Edit_mustinput">*</span>引用分版:</td>
<td  class="Search_content" id="yyfb">
  <select name="yyfbDm" style="width:160" id="yyfbDm" onChange="getCpgjThgl('yyfbDm','thgjDm')">

  </select>
</td>
  </tr>
  <tr>
<td class="Search_item">退化构件:</td>
<td  class="Search_content" id="thgj">
   <select name="thgjDm" style="width:160" id="thgjDm">
<option value="-1" selected>无</option>
   </select>
</td>
  </tr>
</TABLE>
分享到:
评论

相关推荐

    select option带自定义图片

    总结来说,要实现`&lt;select&gt;`和`&lt;option&gt;`带有自定义图片的效果,我们需要结合HTML的`data-*`属性,JavaScript的动态操作和CSS的样式设计。这不仅增强了用户体验,也展示了前端技术在实现视觉效果方面的灵活性。在...

    javascript_select_option_操作详解.txt

    ### JavaScript Select Option 操作详解 #### 一、检测是否有选中项 在处理表单时,经常需要检测用户是否已选择了某个 `&lt;select&gt;` 元素中的 `&lt;option&gt;` 项。以下是一个简单的示例来实现这一功能: ```javascript ...

    js实现动态生成select中的option

    在JavaScript编程中,动态生成`select`元素中的`option`是一项常见的需求,特别是在网页交互或者数据展示时。本文将深入探讨如何使用JavaScript实现这一功能,同时结合提供的`autoSelect.html`和`autoselect.txt`...

    Javascript操作Select和Option

    Javascript操作Select和Option 一个网页 挺全的

    jquery获得select option值

    根据提供的文件信息,我们可以总结出一系列关于如何使用jQuery来获取不同类型的表单元素(如文本框、单选按钮、复选框以及下拉列表)的值的方法。下面将详细介绍这些方法及其应用场景。 ### 一、获取文本框(input ...

    JS动态添加Select中的Option元素值

    在JavaScript(JS)编程中,动态添加Select中的Option元素值是一项常见的需求,特别是在网页交互或者数据填充时。这里我们将深入探讨如何实现这个功能,并提供一个实际的案例来演示这一过程。 首先,我们要理解HTML...

    select option,鼠标移到哪个选向就给出相应的鼠标提示

    JavaScript可以监听鼠标的移动事件,当鼠标移动到&lt;select&gt;的某个&lt;option&gt;上时,触发显示提示信息的代码。CSS则用于定制提示信息的样式,如颜色、位置、字体等,使其与整体界面风格保持一致。 例如,以下是一个简单...

    javascript 获取select ->option中id、value、label属性及中内容

    javascript 获取select -&gt;option中id、value、label属性及&lt;option&gt;&lt;/option&gt;中内容

    Jquery操作Select option整理

    ### jQuery 操作 Select Option 整理 #### 一、引言 在Web开发中,`&lt;select&gt;`元素作为用户交互的重要部分,常用于提供一系列选项供用户选择。jQuery作为一种流行的JavaScript库,极大地简化了DOM操作的过程,使得...

    javascript操作Select标记中options集合

    然后,通过`.options`属性可以访问到`&lt;select&gt;`元素中的所有`&lt;option&gt;`对象,它是一个`HTMLOptionsCollection`对象。 2. **HTMLOptionsCollection**:这是HTML DOM中一个特殊的数组,包含了`&lt;select&gt;`元素的所有`...

    js select option

    总结一下,`select`和`option`是网页表单中常用的选择组件,通过JavaScript和JQuery,我们可以方便地创建、读取、更新和删除这些组件的选项。JQuery提供的API使得操作更加简洁,同时提供了丰富的事件处理机制,使得...

    select将选中的option设置为默认选项

    在JavaScript中,这可以通过操作DOM(文档对象模型)来实现。本文将详细介绍如何使用JavaScript将指定的`&lt;option&gt;`设置为默认选中。 首先,我们需要了解`&lt;select&gt;`和`&lt;option&gt;`的基本用法。`&lt;select&gt;`元素包含一个...

    js 操作select和option

    ### JavaScript 操作 Select 和 Option 的方法详解 在网页开发中,`&lt;select&gt;` 元素是一种常见的表单控件,用于收集用户输入的选择项。它通常包含多个 `&lt;option&gt;` 子元素供用户选择。通过 JavaScript,我们可以实现...

    自定义带图标的select,只需把图标地址写在option的title属性中即可

    总结来说,这个基于jQuery的自定义下拉框JS插件通过将图标地址插入到`&lt;option&gt;`的`title`属性中,实现了带图标的下拉框,支持选项分组,使得原本单调的`&lt;select&gt;`元素变得更加生动和易用。对于任何希望提升网站或...

    Javascript Select操作大集合

    JavaScript中的Select对象是HTML表单元素Select的编程接口,它提供了对下拉列表的操作功能。在Web开发中,Select元素通常用于创建用户可以选择的多个选项。以下是对标题和描述中涉及的知识点的详细说明: 1. **动态...

    向元素中动态添加option

    这篇博客“向&lt;select&gt;元素中动态添加option”探讨的就是如何在JavaScript或jQuery的帮助下,实现在用户界面中动态地向`&lt;select&gt;`元素添加选项。 JavaScript是一种广泛使用的客户端脚本语言,它可以操作HTML元素,...

    JavaScript操作select大全

    - 参数`objSelect`表示`&lt;select&gt;`元素对象。 - 参数`objItemValue`为要判断的`&lt;option&gt;`元素的`value`值。 - 返回值为布尔值,若存在则返回`true`,否则返回`false`。 #### 二、对属性的增删改成 ##### 2.1 添加一...

    固定宽度下拉列表select中option内容显示不全问题解决方法

    在网页设计中,`&lt;select&gt;`元素和其子元素`&lt;option&gt;`经常被用来创建下拉列表,供用户选择。然而,在某些情况下,特别是在固定宽度的`&lt;select&gt;`元素中,如果`&lt;option&gt;`的内容过长,可能会导致内容显示不全,只显示部分...

    javascript select options 排序(保持option 对象完整性)

    根据给定文件的信息,本文将围绕“JavaScript Select Options 排序(保持Option对象完整性)”这一主题进行深入探讨。文章将详细介绍如何在不破坏`&lt;option&gt;`元素结构的前提下,实现下拉选择框(`&lt;select&gt;`)中选项的...

    用jquery获取select标签中选中的option值及文本的示例

    - 方法一:通过id选择器获取select标签,然后使用":selected"伪类选择器找到当前选中的option,接着使用.text()方法获取选中的option的文本内容。代码为`$("#sel option:selected").text();` - 方法二:通过id选择...

Global site tag (gtag.js) - Google Analytics