input type="reset"について

[上に] [前に] [次に]
hiro 1999/11/16(火) 15:03:18
いつも利用させてもらってます。
初心者で何も分かりませんが宜しくお願いします。

<html>
<head>
<title>991102</title>
<script>
function check(n){
if(n==3){
for(i=0;i<=2;i++){
  document.forms[0].chk[i].checked=false
}
}else{
document.forms[0].chk[3].checked=false
}
}



function check2(){
if(document.select.select01(0).checked==true){

document.select.select02(0).disabled=false;
document.select.select02(1).disabled=false;
}
else{
document.select.select02(0).disabled=true;
document.select.select02(1).disabled=true;
}
}

</script>
</head>
<body>

<form>
A<input type=checkbox name=chk onclick=check(0)><br>
B<input type=checkbox name=chk onclick=check(1)><br>
C<input type=checkbox name=chk onclick=check(2)><br>
D<input type=checkbox name=chk onclick=check(3)><br>
</form>

<form name="select">
A<input type=radio name="select01" onclick="check2()">
a<input type=radio name="select02" desabled=true>
b<input type=radio name="select02" disabled=true><br>
B<input type=radio name="select01" onclick="check2()"><br>
</form>

</body>
</html>

この様なフォームを何とか作ったんですが、この内容をリセットするのにinput type="reset"を使いたいんです。
ただうまくいかなくて困ってます。
どのように書いたらいいか良いアイディアがありましたら
是非教えて下さい。

ちゃいパパ [HomePage] 1999/11/16(火) 17:21:12
質問がイマイチ理解できませんが、以下の様なことですか?

function clear(){
    reset時の変数クリアー処理
}
<INPUT TYPE="reset" VALUE="取り消し" onClick="clear()">

Nobu3 1999/11/16(火) 17:49:03
<form>が二つあるからでしょう。
「reset」は<form>内の項目をリセットするので。

また、「disabled=true」は「disabled」でよいです。
どちらにしてもNNでは(今のところ)解釈してくれないようですが。
# 上段はスペルが「desabled」になってる。

Nobu3 1999/11/16(火) 17:51:14
書き方が紛らわしかったので、ちょっと追加。

「disabled」でいいのは<input>の方です。
JavaScriptで書いている部分は「true」の代入が必要です。

Nobu3 1999/11/16(火) 17:56:20
あぁ、ごめんなさい。

「disabled」の設定が、「reset」では戻らないですね。
ちゃいパパさんが書いた様にスクリプトを呼ばないと、
完全には戻らないです。(Win95+IE4.01)
# もしかしてこの事?

hiro 1999/11/16(火) 18:08:43
質問の仕方が下手で申し訳ありません。

チェックボックスとラジオボタンの選択で上で書いたような
制限をしたかったのであのようなソースになってしまいました。
まだJavaScriptが良く分からないのでみようみまねなので
他の書き方がわかりません。

やりたい事は2つのフォーム内容をリセットしたいんです。
<form>が2つになってしまいましたがその必要はありません。
他のやり方がわからなかったので・・・。

ちゃいパパ さんのやり方で試したいのですが
変数クリア処理の部分をどう書いたらいいか今調べてます。

Nobu3 1999/11/17(水) 08:39:56
フォームのリセットは
document.フォーム名.reset();
です。

あと、「reset」で元に戻らなかったのは、
document.select.select02(0).disabled=true;
document.select.select02(1).disabled=true;
の2つです。

[上に] [前に] [次に]