問題
下拉式選單連動
解決方法
資料來源:javaworld
<html> <script> // 通常,當資料選項的變動性不大時,都會直接寫成 .js 檔含入即可。 var country = new Array();
// 看幾個國家
country[0] = '台灣';
country[1] = '中國';
country[2] = '日本';
var city = new Array(); city[0] = new Array();
// 台灣的城市 city[0][0] = '台北';
city[0][1] = '台中';
city[0][2] = '台南';
city[0][3] = '高雄';
city[1] = new Array();
// 中國的城市
city[1][0] = '北京';
city[1][1] = '上海';
city[1][2] = '南京';
city[2] = new Array();
// 日本的城市
city[2][0] = '東京';
city[2][1] = '名古屋';
// 載入 master 選單,同時初始化 detail 選單內容 function loadMaster( master, detail )
{
master.options.length = country.length;
for( i = 0; i < country.length; i++ )
{ master.options[ i ] = new Option( country[i], country[i] );
// Option( text , value ); } master.selectedIndex = 0; doNewMaster( master, detail ); } // 當 master 選單異動時,變更 detail 選單內容 function doNewMaster( master, detail ) { detail.options.length = city[ master.selectedIndex ].length; for( i = 0; i < city[ master.selectedIndex ].length; i++ )
{ detail.options[ i ] = new Option( city[ master.selectedIndex ][ i ], city[ master.selectedIndex ][ i ] ); } } </script> <body onload="loadMaster( document.getElementById( 'country' ), document.getElementById( 'city' ) );"> <select name="country" id="country" onChange="doNewMaster( document.getElementById( 'country' ),document.getElementById( 'city' ) );"> </select> <select name="city" id="city"> </select> </body> </html>
沒有留言:
張貼留言