挖空 HTML 绑定和字符串格式的 HTML 长度

Knockout HTML binding and length of HTML in terms of string

本文关键字:HTML 长度 格式 绑定 挖空 字符串      更新时间:2023-09-26

我有一个字符串,它有html代码。所以我有约束力,就像

<div data-bind="html : Notes()"></div>

现在我想根据没有 Html 元素的注释长度向div 添加一个类。

假设 Notes = "<b>Hello</b>" ,则Notes.length = 12 (With <b> and </b>)

但是我需要替换所有 html 元素,并且我需要将长度定为 5(您好)。

我怎样才能实现以下一行。

<div data-bind="html : Notes(), css:{myclass : Notes().length > 5}"></div>

您可以创建一个计算,该计算创建一个虚拟元素并返回其文本长度,如下所示:

var noteLength = ko.computed(function() {
  var tempElement = document.createElement("div");
  tempElement.innerHTML = Notes();
  return tempElement.innerText.length;
});

您可以通过 css 属性添加动态类,然后通过属性添加静态类。详情请见以下链接。如果这没有帮助,请告诉我。

通过CSS绑定、淘汰来组合动态和静态类.js