2016-08-04 8 views
2

ログインフォームではFirefoxが保存されますが、「パスワードを保存」ボックスは表示されません。私はオートコンプリート= "on"を追加してみましたが、動作しません。誰でも私に答えを提案することができます。私はどんな拡張子も使いたくなかった。私のコードは以下に与えられている。Firefoxはパスワードを保存しますが、ログインフォームのパスワードを保存しません。

<form spellcheck="false" autocomplete="on" id="login-form" action="/user/login/do-login" method="post"> 
       <div class="separator-bar"></div> 
       <div class="credentials-container"> 
        <div class="username-container"> 
         <div class="label">Email/Username: </div> 
         <div class="field"> 
          <input class="wx-input" type="text" name="<?php echo $this->escape(App_Api_User::ARG_USERNAME)?>" value="<?php if(isset($this->username)) {echo $this->username;}?>" spellcheck="false"/> 
         </div> 
        </div> 
        <div class="password-container"> 
         <div class="label">password: </div> 
         <div class="field"> 
          <input class="wx-input" type="password" name="<?php echo $this->escape(App_Api_User::ARG_PASSWORD)?>"/> 
         </div> 
        </div>  
       </div> 

       <div class="separator-bar bottom"></div> 
       <div class="forgot-password-container"> 
        <div class="text">forgot password: </div> 
        <div class="password-page button"><a class="loginForgotPassword" href="#">CLICK HERE</a></div> 
       </div> 

       <div class="submit-container"> 
        <input class="login button disabled" type="submit" name="submit" value="GO" /> 
       </div> 
       <div id="infoMessageContainer"> 

       </div> 

       <div class="general-error"></div> 

      </form> 

$('body').on('click', '.submit-container .login', function(e) { 
      if ($(this).hasClass('disabled')) { 
       e.preventDefault(); 
       e.stopPropagation(); 
      }else{ 
       var self = this; 
       self.submit(); 
      } 
     }); 

_success: function() 
    { 
     window.location.href = '/user';  
    } 

答えて

0

私は多くの変更を行い、最終的には下のコードブロックで動作します。 誰かを助けてくれることを願っています。このコードでフォームを提出する必要があります。

 var winNav = window.navigator, 
     isIOSChrome = winNav.userAgent.match("CriOS"); 
     var isChrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1; 
     //Use below if statement, if you want to run only in chrome 
     if(isChrome || isIOSChrome){ 
      $('#login-form').submit(function() { 
       if(-1 !== this.action.indexOf('/login')) { 
        var jForm = $(this); 
        $.post(this.action, $(this).serialize(), function (data) { 
         if (data.success == true) { 
          jForm[0].action = '/user'; 
          jForm.submit(); 
         } 
        }); 
        return false; 
       } 
      }); 
     } 
1

すべてのブラウザは、いつパスワードを保存するのかを知るためのヒューリスティックを使用します。私はFirefoxとChromeに精通しています。彼らが使用するヒューリスティックがあるように思わ:

  • フォームは、パスワードフィールド
  • パスワードフィールドはユーザ名だけが二つの入力フィールドが保存されている
  • にあると想定される直前にテキスト入力を持っている必要があります。 Firefoxは、2つのパスワードフィールドを持つフォームに記入すると、変更されたパスワードを記憶することができる を促します。複数のページへのログインを分離オートコンプリート=オフを使用

    • サイト(特に ブラウザがパスワードを覚えていないことを要求する)
    • :ここ

    は、私は通常、これらのアルゴリズムを破る見るもののリストですユーザー名は1ページに入力され、パスワードは次のページに入力されます。

  • 隠しフォームに隠さ フィールドにこれらのフィールドの内容をコピーするためにJavaScriptを使用した後、隠しフォームを送信むしろ 可視形
  • よりよう ユーザー名として記入するつ以上のフィールドを必要としますSSN、およびパスワード ユーザ名、パスワード、およびPIN
  • ユーザ名とパスワードフィールドの名前を変更すると、 が定期的に変更されます(パスワードが保存されていても、パスワードは のパスワードを入力できなくなります)。
+0

パスワード保存の問題は、クロムのブラウザで発生しています。私は上記のすべてのルールを確認したが、それは私のために働いていない。他の解決策をお願いします。 – Abhijit

+0

私は同じ問題を抱えています。誰かが助けてください。 –

+0

@dave guru、私はこの質問の答えを掲載しました。 – Abhijit

関連する問題