0

这可能是一个微不足道的问题,但我有一个简单的文本框和一个按钮,可以将在文本框中输入的项目添加到列表中,如下所示:

<input type="text" placeholder="Add New Tag" data-bind="value: tagToAdd, valueUpdate: 'afterkeydown', executeOnEnter: addTag" />
<button data-bind="click: addTag">+ ADD</button>

该程序按预期工作,但是每次我按回车键并将项目添加到列表中时,“+ ADD”按钮都会聚焦,除非我使用鼠标再次单击文本框,否则我无法在文本框中输入. 有没有办法聚焦文本框,这样我就可以简单地输入我的数据,按回车键,然后直接输入一个新值而无需拿起鼠标?

谢谢!

4

1 回答 1

2

在 observable 上使用 setFocus 属性,并在添加后将该属性设置为 true;

var focusOnMe = ko.observable(false);

var addSomething= function () {
     // Do something
     focusOnMe(true);
};        

<input data-bind="value: someText, hasFocus: focusOnMe "/>
于 2013-09-30T15:23:10.457 回答