我点击一个按钮时试图将注意力集中在textarea上。
<input type="text" ng-model="myText" id = "area1" ></input>
我的按钮是由模板在指令中动态生成的,
<my-buttons > </my-buttons>
app.directive('myButtons', function () {
return {
restrict: "E",
templateUrl: "templates/buttons.html"
link: function ($scope) {}
};
});
模板
<div>
<div>
<div ng-click="submitResult();">
<div ng-style="color:red"> <span>OK</span>
</div>
</div>
</div>
</div>
当我点击提交时,它会从输入中删除焦点,但我希望焦点保持在输入的位置。我知道我们可以通过
来设定焦点document.getElementById("id").focus();
我是否必须向myButtons指令添加属性并传递输入的id,或者angularjs中还有其他任何解决方法。页面上可以有很多这样的输入和按钮。
答案 0 :(得分:3)
即使另一个控件需要对焦,也没有角度方法来告诉元素不要失焦。您需要通过手动处理blur
事件来自己实现此功能。
答案 1 :(得分:1)
按照查理的回答,并作为获得你想做的事情的建议,试着跟踪目前关注的人。单击按钮时,将焦点返回到上次聚焦的元素。