• 08-05-2018, 18:43:28
    #1
    Arkadaşlar merhaba,
    Tıkandığım bir konuda yardımınızı istiyorum, ilgilenen, kıymetli vaktini ayıran arkadaşlara şimdiden teşekkür ederim.
    Şimdi durum şu şekilde, bir form içerisinde, text inputu mevcut. Bu inputu alırken, gerçek zamanlı olarak uygun formatta girilmesini istiyorum ama bir türlü beceremedim.
    <input type="text" id="kod" name="kod" placeholder="1.1234.1.1.1234567 şeklinde">
    Anlayacağınız üzere, 1.1234.1.1.1234567 formatında almak istiyorum gelen veriyi. Ama kullanıcı bu alana, boşluk, harf, noktalama vs. giremesin ve noktalar otomatik olarak eklensin istiyorum.
    Bir çok kod denedim ama maalesef başarılı olamadım, yardımcı olabilirseniz çok sevinirim.
    Selamlar.
  • 08-05-2018, 19:09:41
    #2
    ozraksy adlı üyeden alıntı: mesajı görüntüle
    Arkadaşlar merhaba,
    Tıkandığım bir konuda yardımınızı istiyorum, ilgilenen, kıymetli vaktini ayıran arkadaşlara şimdiden teşekkür ederim.
    Şimdi durum şu şekilde, bir form içerisinde, text inputu mevcut. Bu inputu alırken, gerçek zamanlı olarak uygun formatta girilmesini istiyorum ama bir türlü beceremedim.
    <input type="text" id="kod" name="kod" placeholder="1.1234.1.1.1234567 şeklinde">
    Anlayacağınız üzere, 1.1234.1.1.1234567 formatında almak istiyorum gelen veriyi. Ama kullanıcı bu alana, boşluk, harf, noktalama vs. giremesin ve noktalar otomatik olarak eklensin istiyorum.
    Bir çok kod denedim ama maalesef başarılı olamadım, yardımcı olabilirseniz çok sevinirim.
    Selamlar.
    Placeholder yerine, selector kullanımı olarak .val() yani input value kullanmanızı tavsiye ediyorum, format olarak da dilerseniz burada ki kütüphaneyi kullanabilirsiniz.
  • 08-05-2018, 19:27:12
    #3
    Üyeliği durduruldu
    Merhabalar hocam,Birçok programlama dilinde bulunan Regular Expression (Düzenli İfade) API'ini JavaScript'te kullanabilirsiniz.
    Yapmanız gereken, formdaki değeri alarak onunla bir RegExp test etmek.

    var formValue = document.querySelector('#myTextInput').value;var pattern = /d{1}.d{4}.d{1}.d{1}.d{7}/;
    var matchResult = pattern.test(formValue);
    if(matchResult) {
    // Yapılacaklar...
    } else {
    // Yapılacaklar...
    }

    Örnek:
    var formValue = document.querySelector('#myTextInput').value; // Değer 1.1234.1.1.1234567 olarak gelsin
    var pattern = /d{1}.d{4}.d{1}.d{1}.d{7}/;
    var matchResult = pattern.test(formValue); // matchResult değişkeni formValue için true döndürür.

    if(matchResult)
    alert('Uygun!');
    else
    alert('Uygun değil!');
  • 08-05-2018, 19:57:13
    #4
    n3pix adlı üyeden alıntı: mesajı görüntüle
    Merhabalar hocam,Birçok programlama dilinde bulunan Regular Expression (Düzenli İfade) API'ini JavaScript'te kullanabilirsiniz.
    Yapmanız gereken, formdaki değeri alarak onunla bir RegExp test etmek.

    var formValue = document.querySelector('#myTextInput').value;var pattern = /d{1}.d{4}.d{1}.d{1}.d{7}/;
    var matchResult = pattern.test(formValue);
    if(matchResult) {
    // Yapılacaklar...
    } else {
    // Yapılacaklar...
    }

    Örnek:
    var formValue = document.querySelector('#myTextInput').value; // Değer 1.1234.1.1.1234567 olarak gelsin
    var pattern = /d{1}.d{4}.d{1}.d{1}.d{7}/;
    var matchResult = pattern.test(formValue); // matchResult değişkeni formValue için true döndürür.

    if(matchResult)
    alert('Uygun!');
    else
    alert('Uygun değil!');
    @n3pix; arkadaşımızın söylediği de olur fakat kütüphane ile çalışmak kod karmaşasından kurtarır.
  • 08-05-2018, 21:21:04
    #5
    Üyeliği durduruldu
    gtopkara adlı üyeden alıntı: mesajı görüntüle
    @n3pix; arkadaşımızın söylediği de olur fakat kütüphane ile çalışmak kod karmaşasından kurtarır.
    Gereksiz yere münazara oluşturmanın bir mantığı yok hocam. Sizce kod kalabalığı mı yoksa daha stabil ve performanslı çalışan yapı mı daha önemli? Bunun şüphesiz tartışması olacağını sanmıyorum.
  • 08-05-2018, 21:36:42
    #6
    n3pix adlı üyeden alıntı: mesajı görüntüle
    Gereksiz yere münazara oluşturmanın bir mantığı yok hocam. Sizce kod kalabalığı mı yoksa daha stabil ve performanslı çalışan yapı mı daha önemli? Bunun şüphesiz tartışması olacağını sanmıyorum.
    Kimse ile münazara oluşturmadım. üstüne üstlük sizi de alıntıladım ve dediği doğru dedim bumudur münazara oluşturmak ? Neyse arkadaşın konusunu dağıtmaya gerek yok.Ben kendi bildiğimi söyledim siz kendi bildiğinizi. İyi Akşamlar.
  • 08-05-2018, 21:37:41
    #7
    n3pix adlı üyeden alıntı: mesajı görüntüle
    Merhabalar hocam,Birçok programlama dilinde bulunan Regular Expression (Düzenli İfade) API'ini JavaScript'te kullanabilirsiniz.
    Yapmanız gereken, formdaki değeri alarak onunla bir RegExp test etmek.

    var formValue = document.querySelector('#myTextInput').value;var pattern = /d{1}.d{4}.d{1}.d{1}.d{7}/;
    var matchResult = pattern.test(formValue);
    if(matchResult) {
    // Yapılacaklar...
    } else {
    // Yapılacaklar...
    }

    Örnek:
    var formValue = document.querySelector('#myTextInput').value; // Değer 1.1234.1.1.1234567 olarak gelsin
    var pattern = /d{1}.d{4}.d{1}.d{1}.d{7}/;
    var matchResult = pattern.test(formValue); // matchResult değişkeni formValue için true döndürür.

    if(matchResult)
    alert('Uygun!');
    else
    alert('Uygun değil!');
    gtopkara adlı üyeden alıntı: mesajı görüntüle
    @n3pix; arkadaşımızın söylediği de olur fakat kütüphane ile çalışmak kod karmaşasından kurtarır.
    Destekleriniz için çok teşekkürler. TÜm kütüphaneyi eklemektense javascriptlerle formları kontrol ettiğim bir sayfa vardı, oraya attım kodu, çok teşekkür ediyorum. Ama bir sorunum daha var, bunu yazarken yaptıramaz mıyım? https://nosir.github.io/cleave.js/ böyle bir kütüphane buldum ama bunu da uygulayamadım.
    Acaba bu gerçek zamanlı kontrolü direkt formu doldururken yapmak mümkün değil mi?



    Yani gerçek zamanlı derken, yazma anını kastediyorum. Formu submit etmeden önce, henüz doldururken.

    Tekrar teşekkürler ikinize de ilginiz ve vaktiniz için.