-.html
<input type="text" ng-focus="display = false" ng-blur="display = true" ng-init="display = true">
<p ng-show="display">aaa</p>
如上述程式碼,focus/blur可以正常控制p標籤的顯示與隱藏
-.html
<input type="text" ng-focus="display = false" ng-blur="hide()" ng-init="display = true">
<p ng-show="display">aaa</p>
-controller.js
$scope.hide = function (){
$scope.display = true;
};
上述程式碼只要focus input,display一直是false, 求解。
續:
老衲服了,貼出專案代碼如下:
-.html
<p class="form-group">
<label class="form-label">应用名:</label>
<span class="desc" ng-show="applyTips"
ng-init="applyTips = true"> 应用名是您将要创建的应用的名称,组织内唯一</span>
<span class="warn" ng-show="applyNameExit">应用名已存在,请重新输入</span>
<span class="warn" ng-show="login.applyName.$error.pattern">您的应用名不正确</span>
<p class="controls">
<input type="text" name="applyName" class="form-control"
ng-model="param.deployment.metadata.name"
ng-pattern="/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/" ng-focus="applyTips=false"
ng-blur="login.applyName.$error.pattern ? applyTips = false : nameIsExit();"
required>
</p>
</p>
-controller.js
$scope.nameIsExit = function (){
if($scope.param.deployment.metadata.name !='' && $scope.param.deployment.metadata.name != undefined){
var param = {
orgId: $localStorage.orgId,
userId: $localStorage.userId,
sessionId: $localStorage.sessionId,
"name": $scope.param.deployment.metadata.name
};
deploymentService.applyNameisExit(param, function(res){
if(res.code == 1415){
$scope.applyTips = false;
$scope.applyNameExit = true;
$scope.submit = function(){
return;
}
}else{
$scope.applyTips = true;
$scope.applyNameExit = false;
}
});
}
else{
$scope.applyTips = true;
}
};
input失去焦點後,提示訊息不再顯示。
滿天的星座2017-05-15 17:09:46
ng-blur 裡面寫表達式就行
ng-blur="isHide"
在控制器中對isHide賦值
$scope.isHide=true;
同理ng-focus裡面也是一樣
官網文件
伊谢尔伦2017-05-15 17:09:46
這位少年,我懷疑你姿勢有問題。
<body ng-app="myApp">
<p ng-controller="MyCtrl">
<input type="text" ng-focus="display = false" ng-blur="hide()" ng-init="display = true">
<p ng-show="display">aaa</p>
</p>
<script type="text/javascript">
var app = angular.module('myApp', []);
app.controller('MyCtrl',function($scope){
$scope.hide = function (){
$scope.display = true;
}
});
</script>
</body>
如果还有问题,我保证让你自切jj
-------------------------------呵呵噠---------------- -----------------------
$scope.param = {
deployment:{
metadata:{
}
}
}
開啟控制台看下錯誤訊息就能解決了。