使用Parse.com与Phonegap;用户注册有问题

Using Parse.com with Phonegap; Trouble with user registration

本文关键字:用户注册 有问题 Phonegap Parse com 使用      更新时间:2023-09-26

我正在使用Phonegap和Parse.com构建一个Android应用程序,以帮助"数据库"管理。我有一个html表单持有用户"用户名"和用户"密码"与id"adduserbutton"提交输入按钮。

这是我的login.html表单。(注意,这个html文件引用了一个名为"main.js"的文件,该文件存储了注册用户背后的逻辑。
            <form id ="adduser">
            <label for="text-3">Username:</label>
            <input type="text" data-clear-btn="true" id="username" id="text-3" placeHolder="Enter Desired Username">
            <label for="text-3">Password:</label>
            <input type="text" data-clear-btn="true" id="password" id="text-3" placeholder="Enter Desired Password">
            <input type="submit" id="adduserbutton" value="Add User">
            </form>

此表单将接受用户名和密码(尚未散列,此时只是测试)。js等待"adduserbutton"被点击,然后应该运行一个函数。这就是问题所在,所以这里是我的main.js代码:

//Parse related keys
var PARSE_APP = "hidden for sake of post";
var PARSE_JS = "hidden for sake of post";
$(document).ready(function() {
Parse.initialize(PARSE_APP, PARSE_JS);
var user = new Parse.User();
$("#adduserbutton").on("touchend", function(e) {
alert("here");
e.preventDefault();
//Grab the user details, no real validation for now
var username = $("#username").val();
user.set("username", username);
var password = $("#password").val();
user.set("password", password);
user.signUp(null, {
           success: function(user) {
               alert("it worked")
           },
           error: function(user, error) {
               alert("error");
           }
    });
  });

正如你所看到的,这里"应该"发生的是:

  1. 所需用户名中的用户类型&输入密码,点击提交按钮。
  2. "adduserbutton"被点击,触发main.js存储数据?
  3. 用户名和密码形式文本字段存储到用户解析对象。
  4. 注册到我的解析表的用户。

然而,我点击提交按钮,页面闪烁(似乎刷新),什么也没发生。没有错误,没有任何东西显示在我的数据库中。任何帮助吗?谢谢!

我认为这是触摸端已知的错误,这取决于你使用的android版本:

https://code.google.com/p/android/issues/detail?id=19827

否则我只能推荐使用一些工具进行调试:

涟漪模拟器

和chrome工具供开发人员调试和查看是否

$ (" # adduserbutton ")。在"touchend"上,函数(e)完全触发。似乎不是一个解析的东西,我猜你的API请求,解析收到是0或至少不增加。

希望这对你有帮助!

问题解决!

将Main.js中的js行从:

$("#adduserbutton").on("touchend", function(e) {
alert("here");
e.preventDefault();

:

document.getElementById('adduserbutton').onclick = function() {