[英]Which gets executed first? onclick or ng-click
Now, I have a button and I have a validation process taking place in its click [onclick]. 现在,我有一个按钮,并且单击[onclick]时正在进行一个验证过程。 I have a web service call and other processes if the validation is successful, which I have in the ng-click. 如果验证成功,我会有一个Web服务调用和其他过程,这些操作都在ng-click中进行。 I doubt validation is not taking place. 我怀疑没有进行验证。
My Page: 我的页面:
<script>
validate(){
// my validation code goes here...
}
</script>
<input type="button" id="btnLogin" title="Login" value="Login" onclick="validate();" ng-click="login_authentication();"/>
My Controller: 我的控制器:
$scope.login_authentication = function() {
// My login code goes here....
}
Ideally you shouldn't be using onclick
at all in angular if you can avoid it. 理想情况下,如果可以避免的话,您根本不应该在角度上使用onclick
。 Run validate()
in your ng-click
and then run login_authentication()
if successful. 运行validate()
在你的ng-click
,然后运行login_authentication()
如果成功。 Alternatively use angular's ng-form
style validation for your inputs. 或者,对输入使用angular的ng-form
样式验证。
You should avoid using onclick
in angularjs. 您应该避免在angularjs中使用onclick
。
For answer of your question onClick
will be called first I tried this code which tells that that onClick
will be called first. 为了回答您的问题,首先将调用onClick
我尝试了这段代码,该代码告诉您将首先调用onClick
。
<div ng-controller="ControllerZero">
<button ng-click="angularNgClick()" onclick="jsClick()">Click</button>
</div>
function ControllerZero($scope) {
$scope.angularNgClick = function() {
alert('Angular NG Click');
};
}
var jsClick = function() {
alert('js on Click');
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.