Parse.com使用javaScript SDK登录

时间:2014-05-18 13:53:39

标签: javascript html parse-platform

无法弄清楚登录失败的原因。这是javaScript代码:

Parse.initialize("app id", "app key");

function fazerLogin() {
    var username = document.getElementById('usuario').value;
    var password = document.getElementById('senha').value;

    alert(username);
    alert(password);

    Parse.User.logIn(username, password, {
        success: function(user) {
            alert("deu certo");
            // Do stuff after successful login.
        },
        error: function(user, error) {
            alert("erro");
            alert(user + error);
            // The login failed. Check error to see why.
        }
    });
}

var botao = document.querySelector('#botao');
botao.onclick = fazerLogin;

调用该函数是因为我看到了具有正确登录名和密码的警报。我可以毫无问题地登录iOS sdk,但它不能在javaScript上工作,我不确定我错过了什么。在html body内的 <!-- PARSE.COM JS --> <script src="assets/js/parse-1.2.18.js"></script> <script src="assets/js/login.js"></script> 文件末尾,我有:

Parse.User.logIn("username", "password", {

即使我将用户名和密码作为字符串,例如:login,它仍然无法正常工作。

更新

Parse.User.logIn("email", "PASS", { success: function(user) { console.log("Deu certo"); console.log(user); return true; }, error: function(user, error) { console.log(user + error); return false; } }); 在我在函数外部调用它时起作用:

<form role="form" id="formulario-login">
                <div class="form-group has-feedback lg left-feedback no-label">
                  <input type="text" class="form-control no-border input-lg rounded" placeholder="Usuário" autofocus id="usuario">
                  <span class="fa fa-user form-control-feedback"></span>
                </div>
                <div class="form-group has-feedback lg left-feedback no-label">
                  <input type="password" class="form-control no-border input-lg rounded" placeholder="Senha" id="senha">
                  <span class="fa fa-unlock-alt form-control-feedback"></span>
                </div>
                <div class="form-group">
                  <div class="checkbox">
                    <label>
                      <input type="checkbox" class="i-yellow-flat"> Manter-me conectado.
                    </label>
                  </div>
                </div>
                <div class="form-group">
                    <button type="submit" class="btn btn-warning btn-lg btn-perspective btn-block" id="botao">LOGIN</button>
                </div>
            </form>

HTML表单

{{1}}

1 个答案:

答案 0 :(得分:6)

正如我们在评论中所讨论的那样,问题在于您使用的是<button type="submit"而不是<button type="button"

两者之间的核心区别在于submit类型实际上会在执行您的函数之前提交HTML表单中的表单和数据,而button类型会为您提供一个按钮不会提交,但会触发分配给它的所有事件(例如您的onclick)。