Я использую node.js Angular.js и mongodb для своего приложения для регистрации. Я делаю ajax-вызов для отправки информации о регистрации пользователя в DB через сервер, но что я найденный, его функция успеха вообще не работает, хотя все данные вставляются в БД, но иногда иногда выполняется функция ошибки. Я хочу сделать что-то внутри этой функции успеха. Пожалуйста, проверьте мой код ниже.Jquery ajax Функция успеха не работает в приложении Node.js
loginController.js:
function loginController($scope){
$scope.hidespan=true;
var userInfo=[] ;
$scope.signup=function(){
if (document.getElementById('email').value==''){
$scope.hidespan=false;
$scope.emailerror="* This field can not be blank";
$('#email').addClass("err-email");
}else{
var value=validateEmail($('#email').val());
if (value==false){
$scope.hidespan=false;
$scope.emailerror="Email format is not correct"
}else{
userInfo.push({email:$scope.email});
}
}
if($('#fname').val()==''){
$scope.hidespan=false;
$scope.fnameerror="* First name field canot be blank";
$('#fname').addClass("err-email");
}else{
var fvalue=validateFname($scope.fname);
if(fvalue==true){
$scope.hidespan=false;
$scope.fnameerror="User first name should contain more than 3 letter";
$('#fname').addClass("err-email");
}else{
userInfo.push({fname:$scope.fname});
}
}
if ($('#lname').val()==''){
$scope.hidespan=false;
$scope.lnameerror="* Last name field canot be blank";
$('#lname').addClass("err-email");
}else{
userInfo.push({lname:$scope.lname});
}
if($('#pass').val()==''){
$scope.hidespan=false;
$scope.passerror="* Password field canot be blank";
$('#pass').addClass("err-email");
}else{
var pass=validatePass($scope.password);
if(pass==false){
$scope.hidespan=false;
$scope.passerror="password length should not less than 6";
$('#pass').addClass("err-email");
}else{
userInfo.push({password:$scope.password});
}
}
if($('#codeest').val()==''){
$scope.hidespan=false;
$scope.codeerror="* code field canot be blank";
$('#codeest').addClass("err-email");
}else{
userInfo.push({code:$scope.code});
console.log('user',userInfo);
}
if(userInfo.length==5){
console.log('user',userInfo);
var sentData={email:userInfo[0].email,fname:userInfo[1].fname,lname:userInfo[2].lname,password:userInfo[3].password,code:userInfo[4].code}
$.ajax({
type:'POST',
data:sentData,
url:"/signUp",
success:function(data){
console.log('data',data);
$('#signupbox').hide(); $('#loginbox').show();
},
error:function(err){
console.log('error',err);
$('#signupalert').css('display','block');
$scope.error=err;
}
})
}
}
}
Следующий код мой код на стороне сервера для работы БД.
admin.js:
var mongo = require('mongojs');
db = 'swarga',
collections = ['user'],
db = mongo.connect("127.0.0.1:27017/"+db, collections);
exports.signup=function(req,res){
console.log('req',req.body);
db.user.insert({email:req.body.email,fname:req.body.fname,lname:req.body.lname,password:req.body.password,code:req.body.code},function(err,docs){
console.log('docs',docs)
})
}
Пожалуйста, помогите мне решить эту проблему.
@ yarons: Да, я сделал это. Через некоторое время я обнаружил, что мне не хватает, чтобы отправить ответ назад. –