字段有效后立即启用提交按钮

时间:2019-02-07 19:47:24

标签: knockout.js knockout-3.0

我有以下模型(删除了一些不相关的内容):

import * as ko from "knockout";

export class RecipientsModel {
    private surveyId: string;
    editBulkAccounts = ko.observable([]);
    firstName = ko.observable("");
    debugData = ko.observable("");
    constructor() {};

    public addRecipients() {}
}

这个模板:

<script type="text/html" id="recipients">
  <!-- ko with: recipient -->
  <form data-bind="submit: addRecipients">
    <div class="form-item form-type-textarea form-item-bulk-accounts">
      <label class="control-label" for="edit-bulk-accounts">Email addresses or mobile number<span class="form-required" title="This field is required.">*</span></label>
      <div class="form-textarea-wrapper resizable textarea-processed resizable-textarea">
        <textarea data-bind="value: editBulkAccounts" class="form-control form-textarea required" id="edit-bulk-accounts" name="bulk_accounts" cols="60" rows="5"></textarea></div>
    </div>
    <input type="submit" id="edit-submit--7" name="op" value="Mark participation" class="form-submit btn btn-fill btn-wd" data-bind="enable: editBulkAccounts().length">
  </form>
  <div data-bind="text: debugData">Test</div>
  <!-- /ko -->
</script>

当我第一次加载页面时,我的提交按钮被禁用。当我在textarea中输入文本时,我想提交按钮以立即启用-即使只有一个字符也可以。发生的情况是直到文本区域失去焦点(即跳出或单击页面上的其他位置)后,提交才启用。

一旦textarea包含任何内容,我可以使用基因敲除来绑定数据以启用“提交”按钮吗?如果可以,怎么办?

1 个答案:

答案 0 :(得分:0)

尝试使用textInput绑定代替文本框中的值-它应立即更新