【发布时间】:2014-06-15 02:54:52
【问题描述】:
使用通用代码通过javascript在cookie中设置用户名和密码如下-
function submitLogin(){
var uNameInCookie=checkCookie("username");
var passInCookie=checkCookie("password");
if(uNameInCookie!=="" && passInCookie!=""){
document.loginForm.login.value=uNameInCookie;
document.loginForm.passwd.value=passInCookie;
document.loginForm.submit();
}
else{
if(checkInput()){
document.loginForm.submit();
}
}
}
function checkCookie(property){
var x= property;
var prop = getCookie(x);
return prop;
}
function getCookie(cName){
var name = cName + "=";
var cookiez = document.cookie.split(';');
for ( var i=0;i<cookiez.length;i++){
var c= cookiez[i].trim();
if(c.indexOf(name)==0){
return c.substring(name.length,c.length);
}
}
return ""
}
function checkInput()
{
if (document.loginForm.login.value == "")
{
return false;
}
else if (document.loginForm.passwd.value == "")
{
return false;
}
if (document.loginForm.login.value!= "" && document.loginForm.login.value!=null)
{
var usernameValue=document.loginForm.login.value;
setCookie("username",usernameValue,365);
}
if (document.loginForm.passwd.value!= "" && document.loginForm.passwd.value!=null)
{
var passwordValue=document.loginForm.passwd.value;
setCookie("password",passwordValue,365);
}
return true;
}
function setCookie ( cName, cValue, expDays){
var d = new Date();
d.setTime(d.getTime() + (expDays*24*60*60*1000));
var expDate = d.toGMTString();
alert(expDate);
document.cookie = cName + "=" + cValue + ";" + expDate + ";path=/";
}
window.onload=submitLogin();
</script>
只有当我注销时,浏览器才能自动登录详细信息并提交表单。
但是如果我关闭浏览器并点击 url,cookie 中存储的用户名和密码就消失了,表单不会自动登录。
代码有什么问题还是某种浏览器设置。如果需要,我还添加了特定站点以添加 cookie。我们还有什么需要做的吗?
提前致谢。
【问题讨论】:
-
您是否在匿名浏览器中运行应用程序?
标签: javascript cookies session-cookies setcookie autologin