2017-09-06 1 views
0

Je souhaite développer une application mobile en utilisant la pile Web et le package avec phonegap. Ma page index.html contiendra un formulaire de connexion. J'ai une fonction js checkLoggedIn(); qui vérifie si l'utilisateur est connecté en recherchant une variable localStorage.Phonegap - Rediriger automatiquement vers une page

Défi: Je veux index.html à rediriger automatiquement member.html si checkLoggedIn() retours true; sinon, il ne redirigera pas et restera sur index.html, cela signifie que checkLoggedIn() fonctionnera sur index.html en charge.
Je ne sais pas quel genre d'événement tirer ou comment le tirer pour y parvenir.

+0

donc u besoin d'une fonction de connexion automatique où chaque fois que l'utilisateur ferme l'application et l'ouvrir à nouveau, il doit rediriger vers la droite de la page intérieure? – Madpop

+0

Quelque chose comme ça. – bodesam

Répondre

0

Ceci est mon code de travail pour la fonction de connexion automatique espère que cela fonctionne pour Android et ios

est sous le code pour le bouton de connexion après avoir entré le nom d'utilisateur et mot de passe

$('#login').click(function() { 
    var userName = $('#Username').val(); 
    var password = $('#password').val(); 

    if (userName == "" || password == "") { 
     window.plugins.toast.showLongBottom("Please enter a valid data"); 
     return false; 
    } 

     var options = { dimBackground: true }; 
    SpinnerPlugin.activityStart("Loading...", options); 

    $.ajax({ 
     type: 'GET', 
     url: xxxxxx.xxxx.xxxxx, 
     data: "uid=" + userName + "&pwd=" + password + "", 

     success: function (resp) { 
      SpinnerPlugin.activityStop(); 
      if (resp.status != 0) { 
       if (resp.RoleId == 1) { 

        mash.Session.getInstance().set({ 
         userId: resp.sno, 
         userName: resp.Name, 

        }); 
        var session = mash.Session.getInstance().get(); 
        window.open('Add.html', '_self', 'location=no'); 

        // Create session. 
        var today = new Date(); 
        var expirationDate = new Date(); 
        expirationDate.setTime(today.getTime() mash.Settings.sessionTimeoutInMSec); 
       } 
       else { 
        SpinnerPlugin.activityStop(); 
        mash.Session.getInstance().set({ 

         userId: resp.sno, 
         userName: resp.Name, 

        }); 
        var session = mash.Session.getInstance().get(); 

        var username = userName; 
        var password = password; 

        window.localStorage.setItem("uname", resp.Name); 
        window.localStorage.setItem("pass", password); 
        window.localStorage.setItem("sno", resp.sno); 

        window.localStorage.setItem("RoleId", resp.RoleId); 


        window.open('Main.html', '_self', 'location=no'); 
        //window.plugins.toast.showLongBottom("Login Successfull"); 
        // Create session. 
        var today = new Date(); 
        var expirationDate = new Date(); 
        expirationDate.setTime(today.getTime() + mash.Settings.sessionTimeoutInMSec); 

       } 

      } 
      else { 

       SpinnerPlugin.activityStop(); 
       window.plugins.toast.showLongBottom("Please Enter valid Username and password"); 
       SpinnerPlugin.activityStop(); 

      } 

     }, 
     error: function (e) { 
      SpinnerPlugin.activityStop(); 
      window.plugins.toast.showLongBottom("Invalid Data"); 
      SpinnerPlugin.activityStop(); 
     } 
    }); 


}); 

après cette utilisation dans le gestionnaire index.html onload fillpassword() pour utiliser cette fonction ci-dessous

function fillpassword() { 

    if (window.localStorage.getItem("uname") != 0) { 


     mash.Session.getInstance().set({ 

      userId: window.localStorage.getItem("sno"), 
      userName: window.localStorage.getItem("uname"), 


     }); 
     if (window.localStorage.getItem("RoleId") != 1) { 

      document.getElementById('Username').value = window.localStorage.getItem("uname"); 
      document.getElementById('password').value = window.localStorage.getItem("pass"); 

      window.open('Main.html', '_self', 'location=no'); 
     } 
    } 
    else { 
     //alert("Yes") 

    } 
} 

les œuvres de code ci-dessus et tout u besoin de maintenir une session

+0

Où est le gestionnaire onload – bodesam

+0

@bodesam fillpassword() est mon gestionnaire onload. quand jamais je ferme mon application et repopen encore il ne demandera pas de connexion directement je redirigerai vers une autre page donnée – Madpop

+0

comment obtenez-vous cette fonction pour exécuter automatiquement sur le chargement de la page – bodesam

1

Qu'en est-:

if(checkLoggedIn()) window.location = "member.html";