为什么我不能在select元素上使用angular指令?

时间:2017-06-09 13:11:18

标签: javascript angularjs onfocus

我有一个指令,专注于我的应用程序中的字段。

专注指令

module.exports = function() {
    return function(scope, elem, attr) {
      debugger;
        scope.$on('focusOn', function(e, name) {
            if (name === attr.focusOn) {
                elem[0].focus();
            }
        });
    };
};

它适用于此输入字段:

<input type="text" focus-on="diameter" />

我可以在控制器中触发它:

$timeout(function() {
   $rootScope.$broadcast('focusOn', field);
});

但是当我尝试在select元素上执行相同的操作时不起作用:

<select focus-on="type"
        tabindex="{{item.layerId}}"
        ng-options="materialType.id for materialType in presetData.materialTypes track by materialType.id"
        ng-model="item.type"
        ng-change="materialTypeChanged(item.type)">
</select>

为什么它不能处理我的select元素?

0 个答案:

没有答案