2014-12-20 4 views
0

임 중포 기지에 메일 및 암호 사용자를 만들려고하지만, 메신저 kepp이 오류가 점점 : 당신이 $('.btn') 선택으로 선택하는 요소가있는 경우사용자 인증

Error: The browser redirected the page before the login request could complete. {code: "REQUEST_INTERRUPTED", stack: (...), message: "The browser redirected the page before the login request could complete."}

var ref = new Firebase("https://***.firebaseio.com"); 
$('.btn').click(function() { 
    var mail = $('#inputEmail3').val(); 
    var pass = $('#inputPassword3').val(); 
    ref.createUser({ 
     email : mail, 
     password : pass 
    }, function(error) { 
     if (error === null) { 
     console.log("User created successfully"); 
     } else { 
     console.log("Error creating user:", error); 
     } 
    }); 
}); 

$(document).ready(); 
+1

클릭 핸들러가 'return false'로 끝나면 안됩니다. – raina77ow

답변

6

을 비동기식 ref.createUser 기능이 완료되기 전에 브라우저가 링크 된 페이지를 탐색하는 링크. 이를 방지하려면 return false 문을 클릭 이벤트 처리기 끝에 추가하십시오. 클릭 핸들러 상단에 e.preventDefault() 문을 추가하여 아래 표시된 것처럼 링크 탐색이 수행되지 않도록 할 수 있습니다.

$('.btn').click(function(e) { //Add the 'e' event object to the parameters 
    e.preventDefault() //Prevents navigation (the default link click action) 
    var mail = $('#inputEmail3').val(); 
    var pass = $('#inputPassword3').val(); 
    ref.createUser({ 
     email : mail, 
     password : pass 
    }, function(error) { 
     if (error === null) { 
     console.log("User created successfully"); 
     } else { 
     console.log("Error creating user:", error); 
     } 
    }); 
    return false; //Extra insurance 
});