2011-09-27 4 views
7

私はphonegapでアンドロイド・アプリケーションを作成しようとしています。最初のページはログイン・ページで、ユーザー認証のためにサーバーに照会し、サーバーはjson stringを戻します。私は応答を得ていますが、私は次のHTMLページにリダイレクトできません。私は私がログイン成功後page2.htmlするようにユーザーをリダイレクトすることができますどのように、私に知らせてくださいphonegap android appのローカルhtmlページにリダイレクトするには?

$('#loginForm').submit(function(){ 
    var uid = $('#login').val(); 
    var pwd = $('#password').val(); 

    $.getJSON('http://example.com/phonegap/login.php', 
     { userid: uid, password: pwd }, 
     function(json) { 
      $.each(json, function(k, v) { 
       if(v == "true" || v == true){ 
        super.loadUrl("file:///android_asset/www/page2.html"); 
       } else { 
        $('#loginError').html("Login failed, username and/or password don't match"); 
       } 
     }); 
    }); 
    return false; 
}); 

を以下のコードを使用していますか?

答えて

13

window.locationを使用して他のhtmlページを呼び出すことができます。また、wwwフォルダにある2番目のhtmlページが完全なパスを表示しない場合は、ネイティブウェイパスを削除してください。 次のコードを確認してください。

$('#loginForm').submit(function(){ 
    var uid = $('#login').val(); 
    var pwd = $('#password').val(); 
    $.getJSON(' http://example.com/phonegap/login.php ', 
     { userid: uid, password: pwd }, 
     function(json) { 
      $.each(json, function(k, v) { 
       if(v == "true" || v == true){ 
        window.location="page2.html"; 
       } else { 
        $('#loginError').html("Login failed, username and/or password don't match"); 
       } 
     }); 
    }); 
    return false; 
});

+0

ありがとう、あなたは私の問題を解決した。私は2〜3日からこの問題に苦しんでいました。 – Arif

+0

もう一度やりました...もう一度ありがとうございます。 – Arif

+0

PhoneGap 1.5.0、jquery 1.7.1およびjquery mobile 1.0.1を使用すると、「JSCallback Server Closed:Stop callbacks」が発生します。エラー(少なくとも私の場合)は、リダイレクト後にスクリプトを無効にします。 jquery関数を使用する "$ .mobile.changePage( 'url');"すべて正常に動作します。 – Redfox

0

は、純粋なJavaScriptの視点からjQueryのloadメソッド

http://api.jquery.com/load/

+0

私はHTMLタグでコンテンツを読み込むのではなくリダイレ​​クトする必要があります。ありがとうと思います。 – Arif

0

を試してみて、
window.location.href = 'something.html';動作しないのでしょうか?

+0

それは働いた..ありがとう – Arif

+0

@ karnyjしかし、webviewは変更されている......... –

0

karnyjが正しいとは、マークされた解決策がiOSで盗まれているためです。 window.location = "url"を使用すると、iOSでアプリケーションがフリーズすることがあります(デバイスを再起動するたびに発生します)。

//これは行く方法です window.location.href = 'something.html';

0

相対パスは問題ありません。

私はwindow.location = './yourPage.html'(と window.location.href = './yourPage.html'
)常に動作しない、
を発見したと、使用して成功を収めている: window.location.replace('./yourPage.html');

0

window.location.replaceに( 'xyz.htmlを') ; 常に動作します!

関連する問題