SORU
4 Mart 2010, PERŞEMBE


Nasıl şifre kaydetmek için sor tarayıcı alabilir miyim?

Hey, bu gibi çalışan bir oturum açma iletişim kutusu olan bir web uygulaması üzerinde çalışıyorum:

  1. "" . Login tıkladığında
  2. Giriş formu HTML AJAX ile yüklenir ve sayfada DİV içinde görüntülenir
  3. Kullanıcı/alanları ve tıklama göndermek geçişte girer. Pas AJAX ile sunulmuştur./<form> -- bir kullanıcı DEĞİL
  4. Eğer kullanıcı/pass Tamam, kullanıcı sayfayı yeniden açmış.
  5. Eğer kullanıcı/pass kötüyse, ama sayfa hata iletisi DİV görünür ve kullanıcı tekrar denemek için alır yeniden.

İşte sorun: tarayıcı hiç her zamanki gibi "bu parolayı Kaydetmek sunuyor? Evet / / Şimdi diğer siteler için yaptığı" sor. Hiç Değil

<form> etiketleri ile <div> "='" " ama bu hiçbir fark yaptı. otomatik tamamlama sarma çalıştım

Tarayıcı giriş benim akışının büyük bir yeniden işleme olmadan parolayı depolamak için bir teklif almak mümkün mü?

teşekkürler Eric

p.s. eklemek benim sorum, ben kesinlikle çalışma ile tarayıcı pencerelerini bu mağaza parolaları, ve ben hiç tıklandığında "asla bu site" ...bu bir teknik sorun ile tarayıcı algılama öyle bir giriş formu, operatör hatası :-)

CEVAP
16 HAZİRAN 2013, Pazar


Bu soru için komple bir çözüm buldum. (27 Chrome ve Firefox 21'de bu test ettik).

Bilinmesi gereken iki şey vardır:

  1. 'Parolayı Kaydet' ve tetikleyecektir
  2. Kayıtlı kullanıcı adı/parola geri yükleme

1. 'Parolayı Kaydet': Trigger

İçinFirefox 21, 'Şifre' şeklinde bir giriş metin alanı içeren algıladığında tetiklenir ve giriş password alanına gönderilir. Kaydet Biz sadece kullanmak gerekir

$('#loginButton').click(someFunctionForLogin);
$('#loginForm').submit(function(event){event.preventDefault();});

someFunctionForLogin() event.preventDefault() orijinal yönlendirme blokları ederken sayfasında formu göndererek nedeniyle imzalanan ajax giriş ve yeniden yükle/yeniden.

Eğer Firefox ile sadece anlaşma, Eğer yukarıdaki çözüm ama Chrome 27'de çalışmıyor yeterlidir. Sonra 'şifre' Chrome 27. Kaydet tetiklemek için nasıl soracaksınız

İçinChrome 27Çünkü tetiklenir . parola kurtar ^strong>sonragiriş metin alanı içeren bir formu göndererek sayfaya yönlendiriliyorsunuz=öznitelik adı ile'' . username ve şifre giriş alanı=öznitelik adı ile'' . parola . Bu nedenle, biz yeniden yönlendirme formu göndererek nedeniyle blok ama ajax giriş yaptık sonra yeniden yönlendirme yapabiliriz.Eğer ajax login sayfayı yeniden yüklemek veya bir sayfaya yeniden yönlendirmek için değil (eğer istiyorsanız, ne yazık ki, benim çözüm işe yaramıyor.)Daha sonra kullanabiliriz

<form id='loginForm' action='signedIn.xxx' method='post'>
    <input type='text' name='username'>
    <input type='password' name='password'>
    <button id='loginButton' type='button'>Login</button>
</form>
<script>
    $('#loginButton').click(someFunctionForLogin);
    function someFunctionForLogin(){
        if(/*ajax login success*/) {
            $('#loginForm').submit();
        }
        else {
            //do something to show login fail(e.g. display fail messages)
        }
    }
</script>

='Düğmesi" düğmesi tıklandığında form sunulacak.tip düğme Daha sonra ajax için düğmeye bir fonksiyon bağlayıcı giriş. Son olarak, $('#loginForm').submit(); düzenlediler-sayfayı yönlendirir. İmzalı-sayfa geçerli sayfa, daha sonra değiştirebilirsiniz 'signedİn.'şu anki sayfa"'. yenileme xxx

Şimdi, Chrome 27 yöntemi de Firefox 21 çalıştığını göreceksiniz. Daha iyi kullanmak için.

2. Kayıtlı kullanıcı adı/parola geri yükleme:

Eğer zaten loginForm kodlanmış HTML olarak varsa, o zaman hiçbir sorun loginForm kayıtlı şifre yüklemek için bulundu.
Ancak, kayıtlı kullanıcı adı/şifre kayıtlı kullanıcı adı/parola, belge yükler sadece bağlama çünkü eğer js/jquery loginForm dinamik olarak yapmak için kullanırsanız loginForm bağlamak olacak.
Bu nedenle, HTML ve kullanımı/jquery/göster/taşı js olarak sabit kod loginForm bu loginForm dinamik olarak saklaman gerekli.


Açıklama: Eğer ajax giriş yaparsanız, etiket şeklinde autocomplete='off' gibi eklemeyin

<form id='loginForm' action='signedIn.xxx' autocomplete='off'>

autocomplete='off' loginForm şifreyle buna izin vermiyor, çünkü başarısız/geri yükleme kullanıcı adı 'autocompletes' kullanıcı adı/parola.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Anthony Le

    Anthony Le

    10 EKİM 2006
  • bcbauer

    bcbauer

    7 ŞUBAT 2007
  • LAHWF

    LAHWF

    5 Kasım 2009