下拉列表框控件select
下拉列表框 |
事件 |
onChange |
当选项发生改变时 |
属性 |
value |
下拉列表框中被选选项的值 |
options |
所有的选项组成一个数组,options表示整个选项数组,第一个选项即为options[0],以此类推 |
selectedIndex |
返回被选择的选项的索引号,如果选中第一个则返回0,以此类推 |
length |
返回下拉菜单中的选项个数 |
方法 |
add(new,old) |
将新的option对象new插入到option对象old前面,如果old为空,则直接插入到末尾 |
实现简单的省市级联的效果:
function changeCity(){
var province = document.myform.selProvince.value;
var newOption1,newOption2;
switch(province){
case "四川省":
newOption1 = new
Option("成都市","chengdu");
newOption2 = new
Option("泸州市","luzhou");
break;
case "北京市":
newOption1 = new
Option("崇文区","chongwen");
newOption2 = new
Option("宣武区","xuanwu");
break;
}
document.myform.selCity.options.length=0;
document.myform.selCity.options.add(newOption1);
document.myform.selCity.options.add(newOption2);
}
解释:
var province =
document.myform.selProvince.value;用来获取表单中“省份”下拉列表框中的value值
new Option("崇文区","chongwen");
表示创建一个option对象,"崇文区"是在列表中显示的文本,"chongwen"表示当option被选中并且表单提交时,返回到指定服务器的一个值
document.myform.selCity.options.length=0;表示设置表单中“城市”下拉列表框中无下拉选项
创建数组语法:
var arrayObjectName = new Array(size);
例如:var arrs = new Array(10);
为数组元素赋值:
var emp;
emp=new Array("aaa","bbb","ccc");
也可以这样赋值:
var emp=new Array(3);
emp[0]="aaa";
emp[1]="bbb";
emp[2]="ccc";
访问数组元素:
通过数组下标访问元素,emp[0]代表第一个元素,以此类推
数组的常用属性和方法:
常用属性:length表示数组长度
var score = new Array(6); 无论是否存储元素score.length总是6
常用方法:
join(分隔符) 以指定的分隔符将数组元素一次拼接起来,形成一个字符串并返回
sort()
对数组元素进行排序,按英文字母顺序或汉子的拼音方式排序
举例:
var emp = new Array(3); //创建数组对象emp,可以存放三个元素
emp[0]="Ryan Dias";
emp[1]="Graham Browne";
emp[3]="David Greene";
emp.sort(); //调用数组的sort方法排序
document.write("排序结果是:<HR>");
for(var i in
emp){ //循环输出,等同for(var i=0;i<emp.length;i++)
document.write(emp[i]+"<BR>");
}
二维数组:
var cityList =new Array();
cityList[0]=['成都','绵阳','德阳'];
cityList[1]=['济南','青岛','枣庄'];
for(var j in cityList[0]){
document.write(city[0][j]+"<BR>");
}
输出结果为:
成都
绵阳
德阳
使用数组优化省市级联功能:
使用文字下标的数组再次优化:
常见错误: