フォーム

JavaScriptは、よくフォームと連動して使われます。メインといってもいいです。

テキストエリア

フォームの内容を書きかえるには、
document.フォーム名.名前.value=代入するモノ
です。名前は、INPUTの属性NAMEでつけた名前です。
変数=document.フォーム名.名前.value
で、その名前の部品の状態が分かります。
この式を使った、textとtextareaの例です。

<form name="one" action="x" onSubmit="return false;">
<p><input type="text" name="te" value="かわります"></p>
</form>
<button onClick="document.one.te.value='かわりました'">push</button>

次は、テキストエリアです。読みこんだ後、書き換えてます。

<form name="two" action="x">
<p><textarea rows="4" cols="40" name="taw" onchange="{name=prompt('お名前は?');
ta=document.two.taw.value;
document.two.taw.value=name+'さん\n'+ta+'\nなのですね'}">--何か書いた後、エリア外をクリックして、名前を入れて--</textarea></p></form>

radio

さっきの式だと、value=""で設定した名前がでます。チェックしたかどうかは、
document.フォーム名.name.checked
です。値は、trueかfalseです。

<SCRIPT type="text/javascript">
<!--
function cheki(){
a=document.food.fruit.checked;
b=document.food.fruit.value;
alert(a+"\n"+b)}
// -->
</script>
<form name="food" action="x"><p>
<input type="radio" name="fruit" value="grape">ぶどう<br>
<input type="reset" name="no" value="やりなおし">
<input type="button" onClick="cheki()" name="sw" value="確認">
</p></form>

ぶどう

radioで名前を一緒にした時は、参照するときに、name[0],name[1]...となるようです。

<SCRIPT type="text/javascript">
<!--
function which(){
var c="";
for (i=0; i<=2; i++){
che=document.foods.fruits[i].checked;
nam=document.foods.fruits[i].value;
c=c+nam+"="+che+"\n"}
alert(c);}
// -->
</script>
<form name="foods" action="x">
<p>
<input type="radio" name="fruits" value="apple">りんご
<input type="radio" name="fruits" value="orange">オレンジ
<input type="radio" name="fruits" value="peach">桃
<input type="button" onClick="which()" name="wh" value="確認">
</p></form>

りんご オレンジ

checkbox

チェックしているかどうかは、radioと一緒で
document.フォーム名.name.checked
です。true|falseが入ります。これらを代入してもいいです。

<form name="yn" action="x">
<p><input type="checkbox" name="chii" value="sumomo" onChange="alert(document.yn.chii.checked)">on/offした後、どこかをクリックして
</p></form>

on/offした後、どこかをクリックして

select

valueは、他のと同じ。何番目が選択されているかは、
document.フォーム名.selectのname.selectedIndex
です。0から始まります。

<form name="flower" action="x">
<p><select name="buy" onChange="alert(document.flower.buy.value+document.flower.buy.selectedIndex)">
<option value="liliy">ゆり
<option value="rose">ばら
<option value="violet">すみれ
</select></p></form>

Next : 次のステップへ
Pre  : 前のステップへ
 Up  : JavaScriptに戻る
Home : ホームに戻る

Presented by Rei

楽天モバイル[UNLIMITが今なら1円] ECナビでポインと Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!


無料ホームページ 無料のクレジットカード 海外格安航空券 解約手数料0円【あしたでんき】 海外旅行保険が無料! 海外ホテル