Input alanına yazı yazıldığında butonun aktifleşmesi

classfiftyone

Hectopat
Katılım
8 Aralık 2020
Mesajlar
274
Çözümler
1
Merhabalar, Online chat için yaptığım bir websitesi var. Lakin sorum şu, kullanıcı input alanına mesaj yazmadan butonun aktif hale gelmesini istemiyorum. Instagram'ın giriş sayfası gibi yani. Onun ki herhangi bir 3 karakter girmeden "Gönder" düğmesi çalışmıyor. Bende aynen onunkini istiyorum. Nasıl yapacağım?
 
Son düzenleyen: Moderatör:
input'un input event'i üzerine bir function yazıp girilen metin uzunluğu eğer istenilen uzunluğun altında ise disabled = true, değilse de false yapmanız yeterli.

JavaScript:
const button = document.querySelector("#btn");
const input = document.querySelector("#txt");
input.addEventListener("input", (event) => {
  const typed = event.target.value;
  button.disabled = typed.length < 3;
});
 
Sonuç yine aynı, mesaj yazmadığım zaman bile bomboş halde gönderiyor. Üstelik buton hala aktif karakter yazmadığıma rağmen. Sanırım ben bir hata yaptım, ekran görüntüsü böyle. Yanlışım nerede?

 
Buttonu başlangıçta "disabled" yapmanız gerekiyor. HTML tarafında içerisinde disabled yazarak veya Script içerisinde button.disabled = true; yaparsanız ilk açıldığı zamanda da pasif şekilde duracaktır.

<button disabled id="btn" vs. vs.></button>
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…