我有一个输入框,其中包含建议列表。我希望只有当输入框被光标和光盘聚焦时才会显示的建议。从输入框中删除光标时隐藏建议。
目前我正在以下面的困难方式进行。
HTML
<input ngFocus="showSuggesions('div_id') ng-blur="hideSuggesions('div_id')" >
JavaScript
$scope.showSuggessions = function(div_id){
document.getElementById(div_id).style.display = "block";
}
$scope.hideSuggessions = function(div_id){
document.getElementById(div_id).style.display = "none";
}
我想要的是
<input ngFocus=( iftrue ? ngShow.div_id : ngHide.div_id )>
我是angularJS的新手,我认为以简单的方式做这件事会让这段代码更具可读性。我不知道angulaJS的许多功能。如果这个问题完全没有意义,我很抱歉。
答案 0 :(得分:2)
这个怎么样?
<input ng-focus="showSuggestions = true" ng-blur="showSuggestions = false" >
<div id="div_id" ng-show="showSuggestions"></div>
div是包含建议的元素。在您输入的焦点上,您将显示div和on blur,您将隐藏它。请注意,在模糊时,“将光标移开”并不相同。
小心拼写“showSuggestions”。