2014-06-27 16 views
7

Bir maxlength = "2" özniteliğine sahip basit bir giriş alanı var. Aşağıdaki kod şuna benzer:html girişinin maxlength özniteliği, HTC One M7 üzerinde çalışmaz

<input id="txtLoginName" maxlength="2"> 

Bu Android cihazların çoğunda çalışıyor. Ancak, HTC One M7'de çalışmıyor. Bu cihazda, istediğim kadar karakter girmeme izin veriyor.

Herhangi bir öneriniz var mı? Bence şu ana kadar cihazlara özel bir sorun olmalı.

Şimdiden teşekkürler.

cevap

2

Bu sorunu birkaç projede gördüm. Bence, Android'in bazı sürümlerinde maksimum uzunluk için kötü destek var.

Çözümümün max çarpmış girilen olmaktan artık karakterler ve engeller miktarını kontrol eden bir jQuery keydown işlevini kullanmaktı.

$('#inputWithMaxLength').keydown(function (e) { 

    var inputLength = jQuery(this).val().length; 

    if(inputLength >= 10) { 
     e.preventDefault(); 
     return false; 
    } 
} 

Ben maxlength nitelikleri ile herhangi bir giriş aramış ve anında bir jQuery yedekleme oluşturulan böylece bu değişebilir eminim. Gerçi bunun yavaş olmasına rağmen emin değilim.

+0

Evet ben jQuery bu konuda yardımcı olabilir biliyoruz. Ancak, başka bir sorunla karşı karşıya kaldım: Örneğin, bir karakter girdim, "f" diyelim, tahmin arkadaşım, ateş, film gibi bazı kelimeler önerir. Önerilen bir kelimeyi seçersem, metin alanı daha fazla 2 karakter ve şimdi, hala bazı karakterleri girebiliyorum. –

+0

bir mobil tarayıcı ve muhtemelen zaten denedim html5 –

+0

çalışan ancak otomatik tamamlama ya autocapitalize vb hiçbiri Android'in tahmini ile çalışır beri = "off" özniteliği otomatik tamamlama giriş vermek veya oluşturabilir. –

6

bu bir deneyin:

var $input = $('input') 
$input.keyup(function(e) { 
    var max = 5; 
    if ($input.val().length > max) { 
     $input.val($input.val().substr(0, max)); 
    } 
}); 
+1

çok kolay ve çok kullanışlı! Android'de ise değerine 'return false' ile tüm diğer öneri> maxlength çalıştı gelmez, bu mükemmel çalışıyor! Teşekkürler! –

+0

Aynı burada. Diğer cevap Android Cordova'da çalışmadı (masaüstü krom tarayıcısında kelimeler olsa da). Ancak bu otomatik tamamlama, otomatik düzeltme etkin olsa bile iyi çalışır. – Hawk

+0

Bu benim Android Cordova proje üzerinde çalışmıyorsa, herhangi bir geçici çözüm var mı? – Sumit

İlgili konular