我将AngularJS与ng-repeat指令一起使用,以将对象数组显示为列表。
<li ng-repeat="cue in cues" class="form-inline">
<input type="text" ng-model="cues[$index].text" class="input-xlarge"/>
{{cue.isNewest}}
</li>
属性“ isNewest”仅在数组的一个元素上为true。我想将键盘焦点设置在该项目的文本输入上。如何使用AngularJS做到这一点?
这是另一个使用attrs。$ observe的指令实现:
myApp.directive('focus', function () {
return function (scope, element, attrs) {
attrs.$observe('focus', function (newValue) {
newValue === 'true' && element[0].focus();
// or, if you don't like side effects (see @Christophe's comment):
//if(newValue === 'true') element[0].focus();
});
}
});
请注意,插值的DOM属性值(即{{cue.isNewest}}
)始终计算为字符串,因此将原因newvalue
与字符串'true'
而不是keyword进行比较true
。
HTML:
<input type="text" ng-model="cues[$index].text" focus="{{cue.isNewest}}"
class="input-xlarge" />{{cue.isNewest}}
这个小提琴还有一个方法可以切换数组中的哪个项目应具有焦点。
请注意,如果您不加载jQuery,则element[0].focus()
由于element.focus()
jqLite没有focus()方法,因此需要在链接函数中使用(而不是)。
本文向大家介绍如何使用AngularJS和HTML5将焦点设置在列表中的文本输入上,包括了如何使用AngularJS和HTML5将焦点设置在列表中的文本输入上的使用技巧和注意事项,需要的朋友参考一下 若要将焦点放在列表中的文本输入上,请尝试以下代码: 以下是HTML:
null 任何帮助都将不胜感激。
当调用函数时,将显示输入。这个函数(绑定到ng-dblclick指令)只是将true设置为,并尝试调用jQuery对输入元素的方法(以前存储在链接器函数的作用域中,作用域为: 简而言之,我想在双击某物时可视化以前隐藏的输入,并立即对其进行聚焦。需要即时焦点,因为当输入失去焦点时会隐藏(我希望用户能够立即编辑输入内容。当用户点击离开时,输入会隐藏)。 问题是,我似乎不能以编程方式将焦点放在input
在UWP应用程序(Windows10)上,我在ListView中显示了一个记录列表。
我有一个网页表单,里面有一个文本框。默认情况下,如何将焦点设置为文本框? 像这样的东西: 有人能帮我吗?我不知道如何用JavaScript设置文本框的焦点。