答える内容に合わせて選択項目の内容を変更するを使ってwindow.onload=function(){}を練習してみたメモ。
javasript
<script type="text/javascript">
var menuItem=[
["渋谷","表参道","外苑前","青山一丁目","赤坂見附","溜池山王"],
["赤坂見附","国会議事堂前","霞ヶ関","銀座","東京","大手町"],
["中目黒","恵比寿","広尾","六本木","神谷町","霞ヶ関","日比谷","銀座"]];
function setMenuOption(obj01,obj02){
for(var i=0;i<obj02.length;i++){
obj02.options[i]=null;
}
var n=obj01.selectedIndex;
if(menuItem[n].length>0){
for(i=0;i<menuItem[n].length;i++){
obj02.options[i]=new Option(menuItem[n][i],menuItem[n][i]);
}
}
}
</script>
html
<body onload="setMenuOption(document.myForm.sbox01,document.myForm.sbox02)"> <p>body onload</p> <form name="myForm"> <select name="sbox01" onchange="setMenuOption(this,this.form.sbox02)"> <option value="1">銀座線</option> <option value="2">丸の内線</option> <option value="3">日比谷線</option> </select> <select name="sbox02"> </select> </form>
body onloadを
<body onload="setMenuOption(document.myForm.sbox01,document.myForm.sbox02)">
window.onload=function(){}に書く
window.onload=function(){
setMenuOption(document.myForm.sbox01,document.myForm.sbox02);
}
最初、引数を指定する方法がわからなくて
window.onload= setMenuOption(document.myForm.sbox01,document.myForm.sbox02);
なんて書いてたけど、これはダメ。
しかしbodyのonloadって何なんだろう
いままでjavascriptだと思ってたけどhtmlのイベントかなにかなのかな?
window.onload=function(){}は文法がasに似てるのでjavascriptだと思うのだけれど
って恥ずかしいレベルのお話ですよね。
関連記事かもしれん:
- 新しい記事:DOMとDHTML
- 古い記事:このブログの制作作業2