angular:ngblur和ngfocus在选项列表中显示/隐藏?

时间:2016-09-11 08:55:31

标签: angularjs

当使用选择和选项时,一旦我点击列表而没有选择任何内容,ngblur就不会触发。

我需要知道何时选择和显示或隐藏的optins。有指令支持这个吗?

我可以在Select元素上使用ngblur和ngfocus,但是对于显示或隐藏的选项没有任何内容。

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:1)

我对小提琴进行了一些测试。

https://jsfiddle.net/EternalLight/x7dxkok2/

<div ng-app="testTt">
    <div ng-controller="Controller" style="padding:2em;"> 
    <select ng-focus="onFocus()" ng-blur="onBlur()">
        <option>Test 1</option>
        <option>Test 2</option>
    </select>  
    <p>{{status}}</p>  
    </div>
</div>

当隐藏选项列表时,单击元素外部时似乎会触发blur事件。当您打开选项列表,然后单击外部时,<select>仍处于焦点位置 - 您可以通过蓝色(或任何其他,具体取决于您的浏览器)轮廓查看它。老实说,我会使用ng-blur,因为需要另外一次外部点击来触发它,并且用户无法绕过它。