这可能是一个微不足道的问题,但我有一个简单的文本框和一个按钮,可以将文本框中输入的项目添加到列表中,如下所示:
<input type="text" placeholder="Add New Tag" data-bind="value: tagToAdd, valueUpdate: 'afterkeydown', executeOnEnter: addTag" />
<button data-bind="click: addTag">+ ADD</button>
该程序按预期工作,但每次按Enter键并将项目添加到列表中后,“+ ADD”按钮将被聚焦,除非我使用鼠标单击,否则我无法键入文本框文本框再次。有没有办法聚焦文本框,所以我只需输入我的数据,按回车键,然后直接输入一个新的值,而不必拿起鼠标?
谢谢!
答案 0 :(得分:2)
在observable上使用setFocus属性,并在添加后将属性设置为true;
var focusOnMe = ko.observable(false);
var addSomething= function () {
// Do something
focusOnMe(true);
};
<input data-bind="value: someText, hasFocus: focusOnMe "/>