1

我使用 Phonegap 和 jQuery Mobile 编写了一个应用程序。它在 Android 上运行良好,但我现在正尝试在 iOS 上实现它。将 XCode 4.3.3 与 iOS 5.1、Phonegap 1.7、jQuery 1.7.1、jqQuery Mobile 1.1 一起使用。应用程序的第一部分是登录。我的 javascript 等待deviceready事件,然后发布到 PHP 页面以检查登录凭据。

我已经放置了一堆警报,并且 js 触发良好,直到 post 方法,此时它死了。第一次遇到白名单异常错误,所以我在 Cordova.plist 中的 ExternHosts 中添加了一个条目。现在,当它发布时,我没有收到任何错误或任何东西。这是我的html页面:

<!DOCTYPE HTML>
<html>
<head>
<title>Login</title>
<meta name="viewport" content="width=device-width,initial-scale=1"/>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="jquery/jquery.mobile.css" type="text/css" charset="utf-8" />
<script type="text/javascript" charset="utf-8" src="js/login1.js"></script>
</head>
<body onload="init()">
<div id="loginPage" data-role="page">
<div data-role="header" data-position="fixed" data-theme="b">
  <h1>Sign In</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" data-id="foo1" data-position="fixed" data-theme="b">
  <h4>Stone Creek Portal</h4>
</div><!-- /footer -->
</div>

<script type="text/javascript" src="jquery/jquery-1.7.1.min.js"></script>
<script type="text/javascript" charset="utf-8" src="cordova-1.7.0.js"></script>
<script type="text/javascript" src="cordova-WebInspector.js"></script>
<script src="jquery/jquery.mobile-1.1.0.js"></script>
</html>

这是我的 Javascript:

function init() {
  document.addEventListener("deviceready", deviceReady, false);
  delete init;
}
function deviceReady() {
  $("#loginForm").on("submit",function(e) {
    $('#loginForm').attr('autocomplete', 'off');
    $("#submitButton",this).attr("disabled","disabled");
    var u = $("#username", this).val();
    var p = $("#password", this).val();
    if(u != '' && p!= '') {
      navigator.notification.alert("before the post");
      $.post("http://someurl.php", {username:u,password:p}, function(res) {
        if(res.result != 'false'){
          var userID = res.result;
          localStorage.setItem('userID',userID);
          $.mobile.changePage("projectList.html");
        } else {
          navigator.notification.alert("Your login failed", function() {});
        }
        $("#submitButton").removeAttr("disabled");
      },"json");
    }
    return false;
  });
}

我真的不确定是什么阻止了我。任何建议将不胜感激。谢谢!

4

0 回答 0