| Formの扱い方 | |||||
|
Java Scriptでは、フォーム(form)の各項目は、 ウィンドウ.フレーム.document.フォーム.エレメント.value で表す。同じウィンドウ内・同じフレーム内であれば、ウィンドウ・フレームは省略する。 フォーム(form)や各エレメント(elements)は、番号と名称のどちらで表してもよい。 従って、下の例で document.forms[0].elements[0].value document.forms[0].ele_a.value document.frm_a.elements[0].value document.frm_a.ele_a.value は、すべて同じものである。 | |||||
|
以下のような2個のフォームがあり、それぞれに2個・3個の入力項目がある場合、 入力項目Data-AとData-Eの表現は、次のようになる。 | |||||
| |||||
|
<form method="post" name="frm_a"> <input type="text" name="ele_a" size="16"> <input type="text" name="ele_b" size="16"> </form> | |||||
|
<form method="post" name="frm_b"> <input type="text" name="ele_a" size="16"> <input type="text" name="ele_b" size="16"> <input type="text" name="ele_c" size="16"> </form> | |||||
|
フォームの値の操作は、 変数= ウィンドウ.フレーム.document.フォーム.エレメント.value ウィンドウ.フレーム.document.フォーム.エレメント.value =変数 で右辺から左辺への代入を行えばよい。同じウィンドウ内・同じフレーム内であれば、ウィンドウ・フレームは省略する。 [例] var xa=document.forms[0].elements[0].value document.forms[0].ele_a.value=xa | |||||
|
四則計算 |
| この部分をHTMLファイルでセーブすればよい |
<HTML>
<HEAD>
<TITLE>Form IO</TITLE>
<SCRIPT LANGUAGE="JavaScript">
function keisan()
{
var xa=eval(document.calc.value_a.value) ;
var xb=eval(document.calc.value_b.value) ;
var op=document.calc.operator.value ;
if(op=="+")
{
xc=xa+xb ;
document.calc.answer.value=xc ;
}
else if(op=="-")
{
xc=xa-xb ;
document.calc.answer.value=xc ;
}
else if(op=="*")
{
xc=xa*xb ;
document.calc.answer.value=xc ;
}
else if(op=="/")
{
if(xb!=0)
{
xc=xa/xb ;
document.calc.answer.value=xc ;
}
else
{
document.calc.answer.value="Divide Check" ;
}
}
else
{
document.calc.answer.value="Invalid" ;
}
}
</SCRIPT>
</HEAD>
<body bgcolor="#aaccff" text="#000000" background="bk04.jpg">
<center>
<table cellpadding=10 background="bj/20.jpg" width=700>
<tr><td>
<form method="post" name="calc">
<input type="text" name="value_a" size="16">
<select name="operator" onchange="keisan()">
<option value=" " selected>OP</option>
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="text" name="value_b" size="16">
<input type="button" value="=" name="kotae" onclick="keisan()">
<input type="text" name="answer" size="36">
</form>
</td></tr>
</table>
</center>
</BODY>
</HTML>
|
|
説 明 (上の例の部分をHTMLファイルにした場合) |
<HTML>
<HEAD>
<TITLE>Disp time</TITLE>
<SCRIPT LANGUAGE="JavaScript">
function keisan()
{
|
|
変数xaに 1番目入力フォームcalcの 1番目のエレメントvalue_aの値value を代入する |
|
関数eval(引数)は 引数が文字列の場合、それが表す数値を値とする。 例えば、va=eval("123")では、vaの値は百二十三となる。 なお、引数が数値でもよく、その場合はそのままの値となる。 |
var xa=eval(document.calc.value_a.value) ; |
|
変数xbに calcという名称の入力フォーム(forms[0]と同じ物)の value_bという名称のエレメント(elements[2]と同じ物)の値value を代入する |
var xb=eval(document.calc.value_b.value) ; |
|
変数opに 1番目入力フォームcalcの 2番目のエレメントoperatorの値value を代入する |
var op=document.calc.operator.value ;
if(op=="+")
{
xc=xa+xb ;
|
|
1番目入力フォームcalcの answerという名称のエレメント(elements[4]:5番目のエレメントと同じ物)の値valueを 変数xcの値とする(以下の演算子でも共通) |
document.calc.answer.value=xc ;
}
else if(op=="-")
{
xc=xa-xb ;
document.calc.answer.value=xc ;
}
else if(op=="*")
{
xc=xa*xb ;
document.calc.answer.value=xc ;
}
else if(op=="/")
{
if(xb!=0)
{
xc=xa/xb ;
document.calc.answer.value=xc ;
}
else
{
document.calc.answer.value="Divide Check" ;
}
}
else
{
document.calc.answer.value="Invalid" ;
}
}
</SCRIPT>
</HEAD>
<body bgcolor="#aaccff" text="#000000" background="bk04.jpg">
<center>
<table cellpadding=10 background="bj/20.jpg" width=700>
<tr><td>
|
|
入力フォームの始まり Java Script内で 「1番目のフォームforms[0]」または「calcという名称」で参照される |
<form method="post" name="calc"> |
|
1番目のエレメント
Java Script内でelements[0]または名称value_aで参照される |
<input type="text" name="value_a" size="16"> |
|
2番目のエレメント
Java Script内でelements[1]または名称operatorで参照される ここでは、選択項目が変わると関数keisan()が実行される |
<select name="operator" onchange="keisan()"> <option value=" " selected>OP</option> <option value="+">+</option> <option value="-">-</option> <option value="*">*</option> <option value="/">/</option> </select> |
|
3番目のエレメント
Java Script内でelements[2]または名称value_bで参照される |
<input type="text" name="value_b" size="16"> |
|
4番目のエレメント
Java Script内でelements[3]または名称kotaeで参照される ここでは、ボタンをクリックすると関数keisan()が実行される |
<input type="button" value="=" name="kotae" onclick="keisan()"> |
|
5番目のエレメント
ここでは、計算結果をJava Scriptが書き込む Java Script内でelements[4]または名称answerで参照される |
<input type="text" name="answer" size="36"> |
| 入力フォームの終了 |
</form> |
</td></tr> </table> </center> </BODY> </HTML> |
■ <input type=タイプ>の各種タイプ |