2017-02-27 86 views
1

在開發我的用戶控制面板時,我決定使用Password Vault將會是一項很酷的功能。這裏用戶可以將團體密碼和用戶名分享給他們的工作組(如果他們與同事共享一個帳戶)並存儲他們自己的個人密碼。這也顯示了它所鏈接的域名和密碼的強度。停止瀏覽器(Firefox)更新已保存的密碼

enter image description here

現在有一個小問題。當使用Firefox時,如同所有偉大的網頁開發人員一樣,當您訪問頁面時,如果您點擊頁面,請求您更新控制面板保存的用戶密碼,則會爲您提供一個彈出窗口。

enter image description here


我不清楚爲什麼,因爲沒有任何地方<form>和領域都沒有使用相同的name, classid。下面是一個典型的領域是如何打印出來(注意:這僅僅是info場):

<div class="pwv_row_column_2"> 
    <div class="pwv_user">%VAR1%</div> 
    <div class="pwv_pass"> 
     <div class="pwv_eye"></div> 
     <div class="pwv_show"> 
      <input type="password" value="%VAR2%" class="pwv_context" readonly="true"> 
     </div> 
     <div class="pwv_hide"> 
      <input type="text" value="%VAR2%" class="pwv_context" readonly="true"> 
     </div> 
    </div> 
</div> 

,然後用下面的jQuery我隱藏和顯示的點擊Eye圖標時的密碼:

$(document).ready(function() { 
    $('.pwv_eye').click(function() { 
     $(this).siblings('.pwv_hide').toggle(); 
     $(this).siblings('.pwv_show').toggle(); 
    }); 
}); 

我已嘗試在字段上使用autocomplete="off",但這不能解決問題。如何停止瀏覽器嘗試更新已保存的信息?即使嘗試添加隨機name=""id=""他們看看是否有幫助:不。

+0

輸入是'readonly',用戶如何更改它們? – Barmar

+0

用戶不會更改它們,在遠端有一個編輯按鈕,您不能看到該按鈕進入不同的頁面,但在此頁面上的任何位置都沒有使用任何表單。我只是使用文本和密碼輸入字段顯示當前密碼時,其隱藏或顯示;並阻止人們改變或刪除它們,我添加了'只讀'選項。 – Kaboom

+1

也許不要使用'type =「password」'。這僅僅是用戶輸入的表單字段所需要的。 – Barmar

回答

0

由於笨拙,firefox將保存的用戶信息以某種方式預先加載到密碼字段中。停止它的方式是去在頁面的開始和添加以下內容:

<div style="display: none;"> 
    <input style="display: none;" type="text" value=""> 
    <input style="display: none;" type="password" value=""> 
</div> 

然後在頁面停止要求來更新保存的一個。

+0

他的問題不是自動填充,問題是瀏覽器提供將密碼更改保存在其密碼管理器中。 – Barmar