- ベストアンサー
フォームを開いたときにテキストボックスを無効にする
htmlファイルを開いたときにhtml内のテキスト ボックスを入力不可にしたいのですが方法は ありますか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
チェックボックスのOnChangeにて form.tbox.readOnly = false; で可能です。 ReadOnlyの代わりに、disabledでも いいかもしれません。 disabledにすると、最初は、見えません。
その他の回答 (2)
- karumakaruma
- ベストアンサー率65% (65/100)
disabledもreadonlyも ブラウザの種類やバージョンによって 使えない場合があります。 Netscape Communicator 4.* 辺りだと まだ使っている人もいそうなので、 こちらにも対応しておいたほうが良さそうです。 例) #見やすくする為にインデントに全角空白を #入れています。コピーする時は注意・・ JavaScript部 function DisAble() { if( document.layers ){ // Netscape 4.*の時 if( document.MyForm.writecheck[0].checked ){ document.MyForm.comment.blur(); } } else { // それ以外 if( document.MyForm.writecheck[0].checked ){ document.MyForm.comment.disabled = true; } else { document.MyForm.comment.disabled = false; } } } Body部 <BODY onLoad="DisAble();"> <FORM METHOD="POST" NAME="MyForm"> <INPUT TYPE=radio NAME="writecheck" value=0 CHECKED onClick="DisAble();">禁止 <INPUT TYPE=radio NAME="writecheck" value=1 onClick="DisAble();">許可 <INPUT TYPE="text" NAME="comment" value="" onfocus="DisAble();"> </FORM> Netscapeでは、テキストボックスに フォーカスが当ると、フォーカスを外して 入力できないようにするという処理になっています。 まぁ最近ではNetscapeも淘汰されてますから 気にするほどの事でも無いんですけどね・・・ Netscapeユーザーの足掻きでした( つд`)
- kokorone
- ベストアンサー率38% (417/1093)
JavaScriptで行う必要はないですね。 <input>タグに、ReadOnly を追加するだけです。
お礼
ありがとうございます。 ラジオボタンをチェック後readonlyを解除して入力を有効にしたいのですが、readonlyはhtmlに書くため解除 できないのでしょうか?