2011-08-11 66 views
2

我有一個網站,彈出窗口(「模態窗口」div)的登錄窗體。以登錄形式顯示保存的密碼

當登錄表單打開時,輸入顯示瀏覽器保存的用戶名和密碼。

當用戶更改用戶名/密碼並輸入無效密碼(驗證是使用Ajax完成的),然後關閉窗口(使用$('#whatever').hide())時,當他再次單擊登錄按鈕時,輸入會顯示相同的錯誤用戶/通過他之前輸入。

有沒有辦法強制瀏覽器將存儲的登錄信息設置爲表單?

回答

0

那麼它顯示以前的信息,因爲你沒有更新該區域正確?對此你也不能。這些字段在初始加載時由瀏覽器設置,而不是在異步調用中設置。

如果用戶輸入正確的用戶名/密碼,瀏覽器會提示他們保存該數據,然後在隨後的訪問中存儲這些值。

您無法明確告訴瀏覽器保存用戶名和密碼。

您也無法將密碼寫入文本模式設置爲密碼的文本框,因爲它只能讀取。

+0

我不想保存密碼,我要取回保存的一個替換錯誤的用戶名/密碼之前輸入的用戶(而無需刷新整個頁面) – Peter

+0

您無法從瀏覽器中檢索保存的密碼。您也無法將其模式設置爲密碼的文本框寫入。它是隻讀的。 –

+0

嗯,是的,你可以。當頁面加載時,你可以這樣做:'var savedpass = $('#login .input [type = password]')。val();'。我可以在加載時保存,然後手動設置值。 – Peter

0

如果在加載頁面時將用戶名和密碼設置爲輸入值,則可以簡單地重置表單。重置表單將在頁面加載時將輸入恢復爲其值。舉例來說,當網頁加載完畢後,說我的形式如下:

<form id="login-form"> 
    <input type="text" name="username" value="matt" /> 
    <input type="text" name="password" value="pw" /> 
</form> 

如果我更改爲無效的用戶名和密碼,你可以叫$('#login-form').get(0).reset()和字段將恢復爲默認值。

檢查了這一點:http://jsfiddle.net/sQV7T/

+0

現在有點酷。不知道你能做到這一點。 –

+0

jQuery沒有.reset()方法 – Peter

+0

良好的捕獲;我已更新以顯示實際功能。 –

相關問題