こんな感じでどうですか?
データの設定方法は、一番目に都道府県名、N個の市町村名、最後は"END"の文字列としてます。
後はお好みで改造してください。
少しでも参考になれば幸いです。
<script langage="javaScript">
PREF_NUM=47; // 都道府県数
PREF=[ ["北海道","苫小牧市","札幌市","室蘭市","END"],
["青森県","青森市","弘前市","END"],
~ 略 ~
["大阪府","大阪市","枚方市","堺市","END"],
["沖縄県","那覇市","END"]
];
function setItem(){
clearItem() ;
no = document.myForm.PrefName.selectedIndex ;
cnt = 1 ;
while(1){
if ( PREF[ no ][ cnt ] == "END" ) break ;
document.myForm.CityName.options[ cnt-1 ] = new Option( PREF[ no ][ cnt ], PREF[ no ][ cnt ] ) ;
cnt++ ;
}
}
function clearItem(){
itemNum = document.myForm.CityName.length
for ( i=0; i<itemNum; i++ ){
document.myForm.CityName.options[ i ] = null ;
}
}
function setPrefItem(){
for ( cnt=0; cnt<PREF_NUM; cnt++ ){
document.myForm.PrefName.options[ cnt ] = new Option( PREF[ cnt ][ 0 ], PREF[ cnt ][ 0 ] ) ;
}
document.myForm.PrefName.selectedIndex = 0 ;
}
function initialize(){
setPrefItem() ;
setItem() ;
}
</script>
<body onLoad="initialize()">
<form name="myForm">
<select name="PrefName" onChange="setItem()">
<option value="">
</select>
<select name="CityName">
<option value="">
</select>
</form>
お礼
大変参考になりました。 ありがとうございます。 お詳しいのですね。私もこれから勉強していきます。