程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> ASP技巧 >> 不刷新頁面改變下拉菜單內容

不刷新頁面改變下拉菜單內容

編輯:ASP技巧

在設計數據庫查詢頁面時,下拉菜單是經常使用的元素。很多時候你會希望選擇了下拉菜單的一項後,相應的另一下拉菜單的內容會隨之改變。這種功能可以通過刷新頁面來實現,但界面顯得不那麼友好。在本文介紹例子中,不需要刷新頁面便可達到目的。當在下拉菜單中選擇了一個省份後,另一下拉菜單會出現該省份的一些城市供選擇。我的基本思路是:在客戶端腳本中,把下拉菜單可能會出現的所有內容預先存放於數組中,以後根據需要從數組中抽取數據寫入下拉菜單中。以下是完整的代碼:
<Html>
<HEAD>
<TITLE>動態改變下拉菜單內容示例</TITLE>
</HEAD>
<SCRipT LANGUAGE=JavaScript>
<!--
//定義一個二維數組aArray,用於存放城市名稱。
var aCity=new Array();
aCity[0]=new Array();
aCity[1]=new Array();
aCity[2]=new Array();
aCity[3]=new Array();
//賦值,每個省份的城市存放於數組的一行。
aCity[0][0]="--請選擇--"
aCity[1][0]="--請選擇--"
aCity[1][1]="廣州市";
aCity[1][2]="深圳市";
aCity[1][3]="珠海市";
aCity[1][4]="汕頭市";
aCity[1][5]="佛山市";
aCity[2][0]="--請選擇--"
aCity[2][1]="長沙市";
aCity[2][2]="株州市";
aCity[2][3]="湘潭市";
aCity[3][0]="--請選擇--"
aCity[3][1]="杭州市";
aCity[3][2]="蘇州市";
aCity[3][3]="溫州市";
function ChangeCity()     
{var i,iPRovinceIndex;
iProvinceIndex=document.frm.optProvince.selectedIndex
iCityCount=0;
while (aCity[iProvinceIndex][iCityCount]!=null) iCityCount++;//計算選定省份的城市個數
document.frm.optCity.length=iCityCount;//改變下拉菜單的選項數
for (i=0;i<=iCityCount-1;i++)//改變下拉菜單的內容
    document.frm.optCity[i]=new Option(aCity[iProvinceIndex][i]);
document.frm.optCity.focus()
}
-->
</SCRIPT>
<BODY ONFOCUS=ChangeCity()>
<H3>選擇你所在的省份及城市</H3>
<FORM NAME="frm">
  <P>省份:
    <SELECT NAME="optProvince" SIZE="1" ONCHANGE=ChangeCity()>
      <OPTION>--請選擇--</OPTION>
      <OPTION>廣東省</OPTION>
      <OPTION>湖南省</OPTION>
      <OPTION>浙江省</OPTION>
    </SELECT>
  </P>
  <P>城市:
    <SELECT NAME="optCity" SIZE="1">
      <OPTION>--請選擇--</OPTION>
    </SELECT>
  </P>
</FORM>
</BODY>
</Html>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved