问题
I'd like to put the focus on an input after it's shown with ng-show. However, this requires a jquery call to be made after the $digest cycle. Does anyone know how to run code after the item is shown, without resorting to setTimeout(), or some such thing? Here's an example plunk of the issue: http://plnkr.co/edit/synSIP?p=preview
回答1:
You can write a simple directive , dont need jquery :
yourApp.directive('focusme',function(){
return function(scope,elem,att){
elem.focus();
}
});
and You can use it like this :
<input type="text" focusme>
回答2:
If you want the input to be automatically focused when it is shown use the html5 autofocus attribute:
来源:https://stackoverflow.com/questions/24289266/select-input-shown-with-ng-show