ニャンコ
buttonやinputでフォームを作ったけど、入力のオンオフの切り替え方が分からないよ~
それは、disabled属性で簡単に切り替えられるよ!
disabled属性は、日本語で無効という意味だよ。
ワンコ
disabled属性を指定することで、ユーザーからの操作を無効化できるんだ!
ワンコ
disabled属性の指定の仕方
disabledの指定の仕方を見ていきます。
下記は主要なフォームパーツですが、特に何も指定していないので操作が可能だと思います。
これを無効化していきます。
指定はとても簡単で、それぞれのフォームに対して「disabled」もしくは、「disabled="true"」を指定するだけです。
<input type="text" disabled>
<input type="checkbox" disabled>
<input type="radio" disabled>
<select disabled="true">
<option>選択</option>
</select>
<button disabled="true">ボタン </button>
jsを使用したdisabled属性の切り替え
「disabled="true"」と「disabled="false"」のようにtrueとfalseを切り替えることでフォーム要素のオンオフを切り替えることができます。
オンとオフの切り替えボタンを作成しましたので、お試しください。
ソースは下記のとおりです。
// オフボタンを押したときの処理 各フォームパーツを無効化する
document.getElementById('off').addEventListener('click',function() {
document.querySelector('input[name="txt"]').disabled = true;
document.querySelector('input[name="checkbox"]').disabled = true;
document.querySelector('input[name="radio"]').disabled = true;
document.querySelector('select[name="select"]').disabled = true;
document.querySelector('button[name="button"]').disabled = true;
})
// オンボタンを押したときの処理 各フォームパーツを有効化する
document.getElementById('on').addEventListener('click',function() {
document.querySelector('input[name="txt"]').disabled = false;
document.querySelector('input[name="checkbox"]').disabled = false;
document.querySelector('input[name="radio"]').disabled = false;
document.querySelector('select[name="select"]').disabled = false;
document.querySelector('button[name="button"]').disabled = false;
})
ニャンコ
今回はボタンクリックイベントだったけど、各々仕様に沿った処理に変更するといいよ!