2017-06-13 93 views
0

我有一個非常簡單的頁面,用戶只需選擇一個或兩個選項,並自動填充表單的其餘部分。該表格要求輸入數據的用戶填寫用戶名和密碼。自動填充HTML字段類型的值= Web表單的密碼

因此,我已經在網絡的其他部分使用了它,但它對密碼字段沒有填充,並且當我按下發送表單時失敗時,sallyin沒有填充密碼。

<select id="username" name="username" onChange="getpass(this.value)"> 
.... 
.... 
<input id="pwd" size="10" type="password" name="password" value=""> 

是在變化invoqued的JavaScript是:

function getpass(str) { 

var xhttp; 
    if (str.length == 0) { 
    document.getElementById("pwd").innerHTML = ""; 
    return; 
    } 
    xhttp = new XMLHttpRequest(); 
    xhttp.onreadystatechange = function() { 
    if (this.readyState == 4 && this.status == 200) { 
     document.getElementById("pwd").innerHTML = this.responseText; 
    } 
    }; 
    xhttp.open("GET", "getpass.php?q="+str, true); 
    xhttp.send(); 
} 

如果我改變字段選擇列表作爲密碼字符串作爲一個選項出現正確。但提交表單因爲期望輸入密碼而失敗。

這個想法是爲了避免用戶必須輸入兩次密碼,因爲它是已知的值(與用戶名幾乎相同)。所有的安全考慮在這個用例中都是不相關的。

+0

你可以使用jQuery? –

+0

哇。放棄這種思維方式。始終保持密碼安全,不要設置優先順序。切勿存儲密碼錯誤。 – Martijn

+0

此外,只需指示他們在瀏覽器提示時點擊「存儲密碼」,您就會擁有更安全的解決方案。 – Martijn

回答

1

試試這個:

document.getElementById("pwd").value = this.responseText;