当gn模型为true时,如何将焦点转移到输入上
How to move focus on input when gn-model is true?
我有div对象和输入字段,它们放在隐藏的表单上。当我点击div时,表单会显示出来,焦点必须移到输入字段上。
<div ng-click="createForm = true">
Create item
</div>
<div ng-show="createForm">
<form class="form-horizontal">
<div class="input-group">
<input type="text" ng-blur="createForm = false">
</div>
</form>
</div>
我用using指令找到了解决方案,但它不起作用。
app.directive('focusOn', function() {
return function(scope, elem, attr) {
scope.$on(true, function(e){
elem[0].focus();
});
scope.$on(attr.focusOn, function(e) {
elem[0].focus();
});
};
});
您没有应用指令?
<input type="text" ng-blur="createForm = false" focus-on="createForm">
请参阅此JSFiddle
HTML
<div ng-app="myApp" ng-controller="myController">
<div ng-click="createForm = true">
Create item
</div>
<div ng-show="createForm">
<form class="form-horizontal">
<div class="input-group">
<input type="text" ng-blur="createForm = false" focus-on="createForm">
</div>
</form>
</div>
</div>
JavaScript
var app = angular.module("myApp", []);
app.directive('focusOn', function() {
return {
limit: 'A',
scope: {
focusOn: "="
},
link: function(scope, elem, attr) {
scope.$watch("focusOn", function(e){
elem[0].focus();
});
}
}
});
app.controller("myController", ["$scope", function($scope){
$scope.createForm = false;
}]);
相关文章:
- keyup事件处理程序更改焦点不适用于快速键入
- 单击时将焦点更改为元素
- 后焦点更改为IE 11中的地址栏,而不是转移到表单中的下一个控件
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- 在IE9中的输入字段中输入焦点最近按钮
- Javascript游戏输入失去焦点
- ExtJS网格单元格编辑器,防止焦点松动问题
- 检查元素是如何获得焦点的
- angularjs移除焦点上的活动类并添加到下一个项目
- Don'不允许将焦点集中在自动完成的选择上
- 当点击另一件事时,将焦点设置为一件事
- 文本框焦点上的自动完成菜单
- 如何检测哪个窗口是焦点
- Chrome(Android)键盘将单词转移到js焦点更改的下一个输入
- 在 JavaScript 中使用箭头键转移焦点
- 如何使用jquery将焦点转移到滚动条
- 当gn模型为true时,如何将焦点转移到输入上
- 当第一个文本框的值为maxLenght=3时,如何将焦点转移到第二个文本框上
- HTML选择元素的焦点转移问题
- 在RHEL5中,Firefox无法将焦点转移到另一个文本输入