이 기사의 예에서는 참고용으로 보조 링크 선택 드롭다운 메뉴의 js 구현을 공유합니다.
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> <script language="JavaScript" type="text/javascript"> //定义了城市的二维数组,里面的顺序跟省份的顺序是相同的。通过selectedIndex获得省份的下标值来得到相应的城市数组 var city=[ ["北京","天津","上海","重庆"], ["南京","苏州","南通","常州"], ["福州","福安","龙岩","南平"], ["广州","潮阳","潮州","澄海"], ["兰州","白银","定西","敦煌"] ]; function getCity(){ //获得省份下拉框的对象 var sltProvince=document.form1.province; //获得城市下拉框的对象 var sltCity=document.form1.city; //得到对应省份的城市数组 var provinceCity=city[sltProvince.selectedIndex - 1]; //清空城市下拉框,仅留提示选项 sltCity.length=1; //将城市数组中的值填充到城市下拉框中 for(var i=0;i<provinceCity.length;i++){ sltCity[i+1]=new Option(provinceCity[i],provinceCity[i]); } } </script> </HEAD> <BODY> <FORM METHOD=POST ACTION="" name="form1"> <SELECT NAME="province" onChange="getCity()"> <OPTION VALUE="0">请选择所在省份 </OPTION> <OPTION VALUE="直辖市">直辖市 </OPTION> <OPTION VALUE="江苏省">江苏省 </OPTION> <OPTION VALUE="福建省">福建省 </OPTION> <OPTION VALUE="广东省">广东省 </OPTION> <OPTION VALUE="甘肃省">甘肃省 </OPTION> </SELECT> <SELECT NAME="city"> <OPTION VALUE="0">请选择所在城市 </OPTION> </SELECT> </FORM> </BODY> </HTML>
이 코드는 비교적 간단합니다.
js에 익숙하지 않다면 js에서 선택 객체 처리에 대한 다음 콘텐츠를 살펴보세요.
1. selectedIndex 속성을 사용하여 현재 옵션의 인덱스를 가져옵니다
드롭다운 상자의 옵션은 선형 배열이며 각 옵션에는 인덱스가 있으며 selectedIndex는 현재 선택한 옵션의 인덱스 번호를 나타냅니다. options 속성과 결합하면 추가 처리를 위해 선택한 옵션 객체를 얻을 수 있습니다. 드롭다운 상자에서 다중 선택을 허용하는 경우 selectedIndex 속성은 선택한 첫 번째 인덱스를 반환합니다.
selectedIndex는 읽기 전용 속성입니다. 인덱스에 의해 지정된 드롭다운 상자의 항목을 선택된 상태로 설정하려면 옵션 개체를 selected=true로 설정하면 됩니다.
2. 선택 개체에 옵션을 추가합니다
sltCity[i+1]=new Option(provinceCity[i],provinceCity[i]);
new Option(provinceCity[i],provinceCity[i])는 ProvinceCity[i] 값을 사용하여 옵션 개체를 생성하는 것을 의미하며 sltCity 텍스트는 i+1이 페이지의 위치를 지정합니다. 새로운 옵션의 .
3.선택한 개체 지우기
드롭다운 상자에서 모든 옵션을 삭제하는 방법에는 두 가지가 있습니다.
첫 번째 방법은 순회하여 삭제하는 것입니다.
var l=myselect.length; for(var i=0;i<l;i++){ myselect.options[i]=null; }
두 번째 방법은 비교적 간단하므로 일반적으로 다음 방법을 사용합니다.
myselect.length=0;