【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要素