2012-01-28 11 views
1

私はjquery mobileで遊んでいますが、Androidのエミュレータでこれを実行している間はどこにもいきません。サービスコールはトリガされません。 handleSubmit機能はcalled.Here iは、次のされたブログであることはありません:Jquery Mobileサービスコールが発生しない

http://www.raymondcamden.com/index.cfm/2011/11/10/Example-of-serverbased-login-with-PhoneGap

ここにここに私のindex.html

<!DOCTYPE HTML> 
    <html> 

    <head> 
     <meta name="viewport" content="width=320; user-scalable=no" /> 
     <meta http-equiv="Content-type" content="text/html; charset=utf-8"> 
     <title>Create Your Account</title> 
     <meta name="viewport" content="width=device-width, initial-scale=1"> 
     <link rel="stylesheet" href="css/jquery.mobile-1.0.1.min.css" /> 
     <script src="js/jquery-1.6.4.min.js"></script> 
     <script type="text/javascript" charset="utf-8" src="js/phonegap-1.3.0.js"></script> 
     <script src="js/jquery.mobile-1.0.1.min.js"></script> 
     <script type="text/javascript" charset="utf-8" src="js/main.js"></script> 
    </head> 

    <body onload="init();"> 

    <div id="loginPage" data-role="page"> 

     <div data-role="header"> 
      <h1>Sign Up</h1> 
     </div> 

     <div data-role="content">  

      <form id="loginForm"> 
      <div data-role="fieldcontain" class="ui-hide-label"> 
       <label for="username">Username:</label> 
       <input type="text" name="username" id="username" value="" placeholder="Username" /> 
      </div> 

      <div data-role="fieldcontain" class="ui-hide-label"> 
       <label for="password">Password:</label> 
       <input type="password" name="password" id="password" value="" placeholder="Password" /> 
      </div> 

      <input type="submit" value="Login" id="submitButton"> 
      </form> 

     </div> 

     <div data-role="footer"> 
      <h4>&copy;</h4> 
     </div> 

    </div> 

    <script> 
    $("#loginPage").live("pageinit", function(e) { 
      checkPreAuth(); 
     }); 
    </script> 

    </body> 
    </html> 

function init() { 
    document.addEventListener("deviceready", deviceReady, true); 
    delete init; 
    } 


    function checkPreAuth() { 
     var form = $("#loginForm"); 
     if(window.localStorage["username"] != undefined && window.localStorage["password"] != undefined) { 
      $("#username", form).val(window.localStorage["username"]); 
      $("#password", form).val(window.localStorage["password"]); 
      handleLogin(); 
     } 
    } 

    function handleLogin() { 
     var form = $("#loginForm");  
     //disable the button so we can't resubmit while we wait 
     $("#submitButton",form).attr("disabled","disabled"); 
     var u = $("#username", form).val(); 
     var p = $("#password", form).val(); 
     console.log("click"); 
     if(u != '' && p!= '') { 
      $.post("http://10.0.2.2:9000/sample1/processsubmit", {username:u,password:p}, function(res) { 
       if(res == true) { 
        //store 
        window.localStorage["username"] = u; 
        window.localStorage["password"] = p;    
        $.mobile.changePage("some.html"); 
       } else { 
        navigator.notification.alert("Your login failed", function() {}); 
       } 
      $("#submitButton").removeAttr("disabled"); 
      },"json"); 
     } else { 
      //Thanks Igor! 
      navigator.notification.alert("You must enter a username and password", function() {}); 
      $("#submitButton").removeAttr("disabled"); 
     } 
     return false; 
    } 

    function deviceReady() {  
     console.log("deviceReady"); 
     $("#loginForm").on("submit",handleLogin); 
    }; 

    $(document).bind("mobileinit", function() { 
     // Make your jQuery Mobile framework configuration changes here! 

     $.mobile.allowCrossDomainPages = true; 
    }); 

どれmain.jsですアイデアは何ですか?私は、このサービスをプレーフレームワークサービスとして実行しています。

+0

どの部分が機能していませんか?問題についてはっきりと正確に調べてください。 – h3xStream

+0

だから誰も上記のコードに間違って参照してください?誰かが私がサービスを呼び出す場所に私を指すことができる他の例? – retrobrain

+0

このスクリプトはhttp://10.0.2.2からアクセスしていますか?..同じオリジンポリシーを参照してください。 – h3xStream

答えて

1

handleSubmitという機能はありません。

私は、JavaScriptでいくつかのブレークポイントを設定し、トリガーされることを期待しているイベントが実際にトリガーされていることを確認することから始めます。

+0

この機能があります:function deviceReady(){ console.log( "deviceReady"); $( "#loginForm")。on( "submit"、handleLogin); }; – retrobrain

関連する問題