对于下拉框的操作十分繁多,这几天项目须要就总结一下

一、动态构建option

有时候我们须要动态构建下拉选择框里面的值,这里我们就要用到 var varItem = new Option("文本","值");构建一个或多个<option value="值">文本</option>

var varItem = new Option("studentName","name");

样例1:窗口在载入完成后,就自己主动构造一个option

<html>
<head>
<script type="text/javascript">
window.onload = function(){
var obj = document.getElementById("sort");
var varItem = new Option("studentName","name");
obj.options.add(varItem);
}
</script>
</head>
<body>
<select id="sort">
</select>
</body>
</html>

当然我认为应该能够一下子构建多个options,可能是声明一个数组或者一个Json对象加入进去,可是详细怎么一下子添加多个option,会的朋友望指点

样例2:利用JS删除一栏为stuNumber的下拉选择框,以后假设做成动态的话就能够通过传參调用方法来删除指定栏的信息了。

<html>
<head>
<script type="text/javascript">
window.onload = function(){
var obj = document.getElementById("sort");
for(var i=0;i<obj.options.length;i++){
/*
删除stuNumber那一栏里面
*/
if(obj.options[i].value == "stuNumber"){
obj.options.remove(i);
break;
}
}
}
</script>
</head>
<body>
<select id="sort">
<option name="name">studentName</option>
<option name="num">stuNumber</option>
<option name="grade">stuGrade</option>
</select>
</body>
</html>

样例3:删除选中的下拉框的值,能够通过一个事件方法来实现,我们能够随便选中一栏,然后点击button,然后那一栏就将被删除

<html>
<head>
<script type="text/javascript">
/*注:delete是JSkeyword,所以開始我想用delete定义方法名的,是不阔以的。*/
function deleteOption(){
var obj = document.getElementById("sort");
for(var i=0;i<obj.options.length;i++){
if(obj.options[i].selected == true){
obj.options[i] = null;
}
}
}
</script>
</head>
<body>
<select id="sort">
<option name="name">studentName</option>
<option name="num">stuNumber</option>
<option name="grade">stuGrade</option>
</select>
<input type="button" value="click" onclick="deleteOption();">
</body>
</html>

样例4:将下拉选择框中的值清空

<html>
<head>
<script type="text/javascript">
window.onload = function(){
document.all.sort.options.length = 0;
}
</script>
</head>
<body>
<select id="sort">
<option name="name">studentName</option>
<option name="num">stuNumber</option>
<option name="grade">stuGrade</option>
</select>
</body>
</html>

样例5:想得到option里面name的值,我们通过一个button事件,点击,弹出对话框,里面的信息就是name的值

<html>
<head>
<script type="text/javascript">
//获取一个下拉选择框的options值
function show(){
var obj = document.getElementById("slt");
for(var i=0;i<obj.options.length;i++){
if(obj.options[i].selected == true){
alert(obj.value);
}
}
}
</script>
</head>
<body>
<select id="slt">
<option value="0">username</option>>
<option value="1">password</option>>
</select>
<input type="button" name="click" value="click" onclick="show();">
</body>
</html>

关键思路还是先得到select下拉选择框这个对象,遍历选中的option,对象.value就能够表达出来。

那我们要是一開始默认就想载入一个特定的option,那我们能够特定定义一个window.onload事件,指定要载入的option的值

<html>
<head>
<script type="text/javascript">
window.onload = function(){
//默认的情况下options显示的是userage这一选择框的信息
document.getElementById("slt").value = 1;
}
</script>
</head>
<body>
<select id="slt">
<option value="0">username</option>>
<option value="1">userage</option>>
</select>
</body>
</html>

样例6:输出option的下标值,从0開始

<html>
<head>
<script type="text/javascript">
function show(){
var obj = document.getElementById("sort");
/*输出option的下标值,从0開始*/
alert(obj.selectedIndex);
}
</script>
</head>
<body>
<select id="sort">
<option name="name">studentname</option>
<option name="stunum">studentnumber</option>
</select>
<input type="button" value="click" onclick="show();">
</body>
</html>

二、select的回显(与jsp结合)

通常我们运行更新用户信息的时候,须要回显下拉选择框的信息,这时候假设用JSP开发的话,能够利用JSTL标签的<c:if>

首先引入JSTL标签库:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<select id="sort" value="${sort}">
<option name="name" <c:if test="${'name' eq sort}">selected</c:if>>studentname</option>
<option name="stunum" <c:if test="${'stunum' eq sort}">selected</c:if>>studentnumber</option>
</select>

持续总结中~~~

參考博客:

http://www.jb51.net/article/44657.htm

(转载本站文章请注明作者和出处Coder的不平庸 ,请勿用于不论什么商业用途)


JavaScript学习笔记之下拉选择框的操作的更多相关文章

  1. javascript学习笔记(九):DOM操作HTML的各种方法使用

    <!DOCTYPE html> <html> <head lang="en"> <meta chaset="UTF-8" ...

  2. javascript学习笔记(四):DOM操作HTML

    当网页被加载时,浏览器会创建页面的文档对象模型Document Object Model,简称DOM Dom操作html 1:改变页面中所有HTML元素 2:改变页面中所有HTML属性 3:改变页面中 ...

  3. 一款javascript实现的超炫的下拉选择框

    今天为给大家带来一款javascript实现的超炫的下拉选择框.下拉的列表由半用透明的幽灵按钮组成.显示下拉的时候,列表项由左右两侧飞入.消息时飞向左右两侧.一起看下效果图 在线预览   源码下载 实 ...

  4. FancySelect – 更好用的 jQuery 下拉选择框插件

    FancySelect 这款插件是 Web 开发中下拉框功能的一个更好的选择.FancySelect 使用方便,只要绑定页面上的任何 Select 元素,并调用就 .fancySelect() 就可以 ...

  5. ul+jquery自定义下拉选择框

    <!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. jquery.chosen.js下拉选择框美化插件项目实例

    由于之前使用的bootstrap-select插件是建立在bootstrap基础上的,实际使用到项目中的时候,与我们使用的ace-admin(基于bootstrap)存在样式冲突,导致下拉框的样式发生 ...

  7. CSS3不一样的下拉选择框

    本例中包含两个下拉选择框的动画示例,本例中并未使用select标签.本例中第一个案例也可用于标题.导航栏等位置. 案例一: html布局 <div class="content&quo ...

  8. Java程序猿的JavaScript学习笔记(12——jQuery-扩展选择器)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  9. Javascript学习笔记四——操作表单

    Javascript学习笔记 大多网页比如腾讯,百度云之类的需要登陆,用户输入账号密码就可以登陆,那么浏览器是如何获取用户的输入的呢?今天就记录一下操作表单. 操作表单与操作DOM是差不多的,表单本身 ...

随机推荐

  1. ADT中的代码补全设置

    设置自动补全代码 刚刚学Android,有很多变量和方法 都不熟悉.需要有提示,才更加方便. 快捷方式:Alt + /    可以出现代码提示. 默认的只有输入“ .” 以后才会有代码补全提示,可作如 ...

  2. 【spring-boot】快速构建spring-boot微框架

    spring-boot是一个快速构建环境的一套框架,其设计理念是尽可能的减少xml的配置,用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义 ...

  3. 自己定制Linux发行版(资料)

    /******************************************************************** * 自己定制Linux发行版(资料) * 声明: * 随着L ...

  4. hdu 2955 Robberies

    Robberies Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  5. 将你的Asp.NET应用程序嵌入到SharePoint

    转:http://www.cnblogs.com/Clank/archive/2007/05/21/754073.html 为什么要将Asp.net应用程序嵌入到SharePoint?这个我们不讨论! ...

  6. 从ramdisk根文件系统启动Linux 二

    今天做了个试验,让Linux2.6.29.4从ramdisk根文件系统启动成功,总结一下.其中涉及的内容较多,很多东西不再详述,如需深入研究请查阅相关资料(百度或谷歌一下一大堆). 开发环境:Fedo ...

  7. socket基本操作

    我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠so ...

  8. UVA 11183 Teen Girl Squad 最小树形图

    最小树形图模板题 #include <iostream> #include <algorithm> #include <cstdio> #include <c ...

  9. JSON 格式的转换: 数组、字符串、List集合、DataTable,实体对象

    JSON验证工具:http://jsonlint.com/JSON简明教程:http://www.w3school.com.cn/json/Newtonsoft.Json类库下载:http://jso ...

  10. linux 学习之 rpm

    目前最常见的两种软件安装方式: 1.dpkg 2.rpm 1.dpkg 最早是由Debian Linux社群开发出来的,通过dpkg,Debian提供的软件就可以简单的安装,同时还能提供安装后的软件信 ...