从昨天开始,我正在尝试完成以下操作。我有一个ui-select
元素,对于用例,每当加载页面时,它都需要具有焦点。正如我在文档中看到的那样,这可以在指令中设置自动对焦,但我实际需要的是每当我单击按钮时将焦点切换到输入文本,如果输入文本再次聚焦到 ui-select,则 viceversa。当它处理将焦点从ui-select
更改为输入文本时,这不是问题,只需执行以下操作:
$("#txt-test").focus();
但在另一种情况下,不是简单地穿上:
$("#cbx").focus();
其中 #cbx
是ui-select
的 id。无论我如何尝试,它都永远不会得到关注。
你可以在这里看到我试图完成的示例:jsFiddle
有什么想法吗?问候。
这应该有效:
$scope.clickButton = function(){
var result = document.getElementById("cbx");
var uiSelect = angular.element(result).controller('uiSelect');
uiSelect.focusser[0].focus();
uiSelect.open = true;
uiSelect.activate();
}
js小提琴