由于整个模板重新渲染而导致输入焦点丢失

时间:2017-05-10 11:46:06

标签: javascript jquery knockout.js knockout-2.0 jquery-templates

我有一个像这样的JQuery模板:

<div class="editor-field">
    <input data-bind="value: ValueField, valueUpdate: 'afterkeydown'" />

    {{if $data.errors && $data.errors().length > 0 }}
    <div>
        an error occured
    </div>
    {{/if}}
</div>

$data.errors是一个observableArray,它开始为空。

我已订阅ValueField并将$data.errors设为[ "hello" ]。但是,当observableArray更新时(由于输入更改),整个模板会刷新,导致输入失去焦点。

之前和之后DOM树的唯一区别是在if-block中添加了div

0 个答案:

没有答案