JavaScriptでフォームを参照するには、オブジェクトの階層構造を意識して指定する。
フォーム全体と、フォームの各要素を示すキーワードは次の通り。
・フォーム全体 ←→ forms
・フォームの各要素 ←→ elements
フォーム全体と、フォームの各要素を示すキーワードは次の通り。
・フォーム全体 ←→ forms
・フォームの各要素 ←→ elements
フォームとフォームの要素は、1つのWebページ内で複数存在する可能性がある。そのため、formsオブジェクトとelementsオブジェクトを参照するときには、何らかの方法で区別をしなければならないのだが、その方法は2つある。
・添え字による参照
フォームはWebページ内で定義された順に番号が振られていく。またフォームの各要素は、フォーム内で定義された順に番号が振られていく。この番号を使って区別するのが、添え字による方法である。
▼添え字によるフォームの参照
<html>
<title>form添え字</title>
<body>
<form action・・・・・・>
・・・・・・・・・・・ <----document.forms[0]
</form>
<form action・・・・・・>
・・・・・・・・・・・ <----document.forms[1]
</form>
<form action・・・・・・>
・・・・・・・・・・・ <----document.forms[2]
</form>
・・・・・・・・・・・
</body>
</html>
このようにWebページ内で<form>タグが出てきた順に、0から番号が振られていく。これらのフォームの参照は、次のような記述になる。
・Webページの中の(document)の1番目のフォーム(forms[0])
もしフォームがフレーム内に配置されているときには、forms[n]の前の部分にframes[n]が入る。
また、フォームの各要素にも、フォームと同じように、フォーム内で記述された順に0から番号が振られる。
<html>
<title>element添え字</title>
<body>
<form action・・・・・・>
<input type="button"> <----document.forms[0].elements[0]
<input type="button"> <----document.forms[0].elements[1]
<textarea・・・・・・> <----document.forms[0].elements[2]
・・・・・・・・・・・
</form>
<form action・・・・・・>
<input type="button"> <----document.forms[1].elements[0]
<input typr="button"> <----document.forms[1].elements[1]
<textarea・・・・・・> <----document.forms[1].elements[2]
・・・・・・・・・・
</form>
・・・・・・・・・・・
</body>
</html>
参照は次の通りとなる。
・Webページの中の(document)の1番目のフォーム(forms[0])の1番目の要素(elements[0])
記述は次の通りとなる。
value1=document.forms[0].elements[1].value;
str=window.frames[0].forms[2].elements[0].value;
・添え字による参照
フォームはWebページ内で定義された順に番号が振られていく。またフォームの各要素は、フォーム内で定義された順に番号が振られていく。この番号を使って区別するのが、添え字による方法である。
▼添え字によるフォームの参照
<html>
<title>form添え字</title>
<body>
<form action・・・・・・>
・・・・・・・・・・・ <----document.forms[0]
</form>
<form action・・・・・・>
・・・・・・・・・・・ <----document.forms[1]
</form>
<form action・・・・・・>
・・・・・・・・・・・ <----document.forms[2]
</form>
・・・・・・・・・・・
</body>
</html>
このようにWebページ内で<form>タグが出てきた順に、0から番号が振られていく。これらのフォームの参照は、次のような記述になる。
・Webページの中の(document)の1番目のフォーム(forms[0])
もしフォームがフレーム内に配置されているときには、forms[n]の前の部分にframes[n]が入る。
また、フォームの各要素にも、フォームと同じように、フォーム内で記述された順に0から番号が振られる。
<html>
<title>element添え字</title>
<body>
<form action・・・・・・>
<input type="button"> <----document.forms[0].elements[0]
<input type="button"> <----document.forms[0].elements[1]
<textarea・・・・・・> <----document.forms[0].elements[2]
・・・・・・・・・・・
</form>
<form action・・・・・・>
<input type="button"> <----document.forms[1].elements[0]
<input typr="button"> <----document.forms[1].elements[1]
<textarea・・・・・・> <----document.forms[1].elements[2]
・・・・・・・・・・
</form>
・・・・・・・・・・・
</body>
</html>
参照は次の通りとなる。
・Webページの中の(document)の1番目のフォーム(forms[0])の1番目の要素(elements[0])
記述は次の通りとなる。
value1=document.forms[0].elements[1].value;
str=window.frames[0].forms[2].elements[0].value;
コメントする