我有一个角度的应用程序进行身份验证用户,其中联系webservice 进行身份验证。 Webservice返回一个json,其中如果用户通过身份验证,则将用户路由到一个页面。如果没有,我显示一个隐藏的div。角js麻烦显示div元素
问题是,它第一次正常工作。比如说,用户输入了无效的凭证,div显示出来。如果用户再次输入无效凭证,则什么也不会发生。但是,从服务器json收到。警报();工作正常..但显示div只能工作一次。我怎样才能达到这个任何数量的失败条目? 。 感谢您的帮助..张贴片段。
login.controller('loginController', function($scope, $http)
{
$scope.credentials = {};
var popFailmessage = function(){
//function for displaying div
$("#danger-alert").show();
$("#danger-alert").fadeTo(2000, 500).slideUp(500, function(){
$("#danger-alert").alert('close');
});
}
$scope.authenticate = function(user){
var credentials = user;// angular.copy(user);
$http({
method: "GET",
url: "http://localhost:8000/index/action",
params: {
email : credentials.email,
password : credentials.password
}
}).success(function (data, status, headers, config) {
console.log(data);
if(data == 0){
popFailmessage(); //calling method here
}else{
//redirect to some page
}
})
.error(function (data, status, headers, config) {
console.log(data);
});
}
});
和HTML部分..
<div class="alert alert-danger" id="danger-alert" style="display:none">
<button type="button" class="close" data-dismiss="alert">x</button>
<center> <strong>Login Failed! </strong>
Please check your ID/ Password.</center>
在此先感谢!
这只是代码的一部分,这里没有足够的信息供其他人复制问题并调试您的逻辑。你应该更新你的问题,包括问题的[mcve],最好是使用类似plunker的东西。除此之外,你在问为什么角没有显示弹出窗口,但函数不是角度的。 '$'是JQuery。 – Claies
如果我不得不猜测,而不是JQuery的专家,那么我的第一个猜测就是您不会每次都创建一个新的div,您正在尝试重新使用现有的div,并且您已经使用了无效的语法'.fadeTo()'函数(第二个参数,不透明度,从'0'到'1'有效,但你有'500'),所以div消失了,并且在下次尝试显示时不会再出现它。 – Claies
@Claies我刚刚告诉,它的一个角度的应用程序..这是它的大部分..核心逻辑..我发射ajax和即时获取数据。发布让我无法使用jquery显示div。如前所述,它第一次正常工作,然后不响应......但我可以看到来自服务器(console.log)的数据。 ..i认为包括所有东西..从调用web服务到显示div。 – Pavan