9月更新・前月(8月)の人気記事トップ10 09/02/2024
- ( 01 – ) 【Labs】position:absoluteとwidth:100%を指定すると横幅の設定がうまくいかない場合の対処方法について
- ( 07 ↑) 【Mac】macOSをHigh SierraからMontereyにアップグレード
- ( 03 – ) 【Mac】横画面で撮影した動画をYouTubeショート用にMacのiMovieで縦画面に編集する方法
- ( 10 ↑) 【iPhone / iPad】iPhoneのツイッターアプリでユーザー名をコピーする方法
- (圏外↑) 【Labs】CSSだけでドロップダウンメニュー
- ( 02 ↓) 【jQuery】入門2. jQueryをHTMLに組み込む
- ( 09 ↑) 【Mac】Safariでソースコードを見る方法
- ( 04 ↓) 【jQuery】入門7. jQueryで新しいWindowを開く
- ( 06 ↓) 【2024年5月】iPad画面解像度まとめ
- (圏外↑) 【GIMP】レイヤーをロック
【Labs】入力したら有効になるリンクボタン2
こんにちは(・∀・)
今回もinput要素やtextarea要素に文字が入力されたら有効になるリンクボタンのjQueryのサンプルをネイティブ化しましたのでご紹介します。
こちらも以前ご紹介しました、【Labs】入力したら有効になるリンクボタンのサンプルと内容はほぼ一緒です。
Contents
1. input要素ボタンのサンプル
input要素に文字を入力すると「送信」ボタンが有効になります。
HTML
<div class="demo1">
<input type="text" id="input1" autocomplete="off">
<input type="submit" id="submit1" value="送信" disabled>
</div>
JavaScript
window.addEventListener('DOMContentLoaded',function(){
document.getElementById('submit1').disabled = true;
document.getElementById('input1').addEventListener('keyup',function(){
if (this.value.length < 2) {
document.getElementById('submit1').disabled = true;
} else {
document.getElementById('submit1').disabled = false;
}
},false);
document.getElementById('input1').addEventListener('change',function(){
if (this.value.length < 2) {
document.getElementById('submit1').disabled = true;
}
},false);
},false);
Result
input要素に文字を2文字以上入力しないと「送信」ボタンが有効になりません。数値を変更したい場合はJavaScript内の「.length < 2)」の数値を変更してください。
2. button要素のサンプル
input要素に文字を入力すると「送信」ボタンが有効になります。
HTML
<div class="demo2">
<input type="text" id="input2" autocomplete="off">
<button type="button" id="submit2" value="送信" disabled>送信</button>
</div>
JavaScript
window.addEventListener('DOMContentLoaded',function(){
document.getElementById('submit2').disabled = true;
document.getElementById('input2').addEventListener('keyup',function(){
if (this.value.length < 2) {
document.getElementById('submit2').disabled = true;
} else {
document.getElementById('submit2').disabled = false;
}
},false);
document.getElementById('input2').addEventListener('change',function(){
if (this.value.length < 2) {
document.getElementById('submit2').disabled = true;
}
},false);
},false);
Result
input要素に文字を2文字以上入力しないと「送信」ボタンが有効になりません。数値を変更したい場合はJavaScript内の「.length < 2)」の数値を変更してください。
3. p要素ボタンのサンプル
input要素に文字を入力すると「送信」ボタンが有効になります。
HTML
<div class="demo3">
<input type="text" id="input3" autocomplete="off">
<p id="submit3">送信</p>
</div>
JavaScript
window.addEventListener('DOMContentLoaded',function(){
document.getElementById('submit3').innerHTML = '送信';
document.getElementById('input3').addEventListener('keyup',function(){
if (this.value.length < 2) {
document.getElementById('submit3').innerHTML = '送信';
} else {
document.getElementById('submit3').innerHTML = '<a href="#">送信</a>';
}
},false);
document.getElementById('input3').addEventListener('change',function(){
if (this.value.length < 2) {
document.getElementById('submit3').innerHTML = '送信';
}
},false);
},false);
Result
送信
input要素に文字を2文字以上入力しないと「送信」ボタンが有効になりません。数値を変更したい場合はJavaScript内の「.length < 2)」の数値を変更してください。
4. textarea要素のサンプル
textarea要素に文字を入力すると「送信」ボタンが有効になります。
HTML
<div class="demo4">
<textarea name="text4" id="text4" autocomplete="off"></textarea>
<br>
<input type="submit" id="submit4" value="送信" disabled>
</div>
JavaScript
window.addEventListener('DOMContentLoaded',function(){
document.getElementById('submit4').disabled = true;
document.getElementById('text4').addEventListener('keyup',function(){
if (this.value.length < 5) {
document.getElementById('submit4').disabled = true;
} else {
document.getElementById('submit4').disabled = false;
}
},false);
document.getElementById('text4').addEventListener('change',function(){
if (this.value.length < 5) {
document.getElementById('submit4').disabled = true;
}
},false);
},false);
Result
textarea要素に文字を5文字以上入力しないと「送信」ボタンが有効になりません。数値を変更したい場合はJavaScript内の「.length < 2)」の数値を変更してください。
いかがでしたでしょうか、やはりjQueryを使った方が簡単かもです...
よろしければお試しください。
関連リンク
【Labs】入力したら有効になるリンクボタン
【Labs】チェックしたら有効になるリンクボタン
【HTMLリファレンス】input要素
【HTMLリファレンス】textarea要素