【发布时间】:2014-06-26 13:09:51
【问题描述】:
我是 PhoneGap 开发的新手。我的 PhoneGap 应用程序有一个登录页面,我需要在这个登录页面中实现一个“记住我”选项。我不知道任何人都可以帮助我的这个功能。我想要一些关于这个功能的示例代码。
请参考下面我尝试过的代码,
function checkPreAuth() {
/* console.log("checkPreAuth");*/
if(window.localStorage.getItem("remember") == true)
{
if(window.localStorage.getItem("username") != undefined && window.localStorage.getItem("password") != undefined) {
var form = $("#loginForm");
$("#Username", form).val(window.localStorage.getItem("username"));
$("#Password", form).val(window.localStorage.getItem("password"));
$("#remember_me", form).attr('checked', true).checkboxradio("refresh");
handleLogin();
}
}
}
$(document).on('pageinit', '#loginPage', function(){
//getTimezoneName();
$('#submitButton').click(function(e){
e.preventDefault();
var u = $("#Username").val();
var p = $("#Password").val();
handleLogin();
});
});
function handleLogin()
{
var form = $("#loginForm");
$("#submitButton",form).attr("disabled","disabled");
var u = $("#Username", form).val();
var p = $("#Password", form).val();
if(u != '' && p!= '')
{
$.ajax({
url: 'http://samplewebsite.com/API/login_api',
type: 'post',
dataType: 'json',
data: $('form#loginForm').serialize(),
crossDomain: 'true',
success: function(data)
{
if(data)
{
//window.localStorage.setItem("key", "value");
// var keyname = window.localStorage.key(i);
if($("#remember_me").is(':checked'))
{
window.localStorage.setItem("remember", $("#remember_me").is(':checked'));
}
window.localStorage.setItem("userId", data.id);
window.localStorage.setItem("username", u);
window.localStorage.setItem("password", p);
$.mobile.changePage("Inbox.html");
}
else
{
navigator.notification.alert("Your login failed", function() {});
}
},error: function (xhr, ajaxOptions, thrownError) {
navigator.notification.alert("Your login failed",null);
}
});
}
else
{
navigator.notification.alert("You must enter a username and password", function() {},"");
}
}
【问题讨论】:
-
欢迎来到 SO。在问题中,您需要展示您研究过的内容和尝试过的内容的一些证据,以及您发现的任何问题,而不是期望有人为您做所有事情。
标签: cordova