Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 剔除HTML绑定和HTML的长度(以字符串为单位)_Javascript_Jquery_Html_Knockout.js - Fatal编程技术网

Javascript 剔除HTML绑定和HTML的长度(以字符串为单位)

Javascript 剔除HTML绑定和HTML的长度(以字符串为单位),javascript,jquery,html,knockout.js,Javascript,Jquery,Html,Knockout.js,我有一个字符串包含html代码。所以我在视图中绑定如下 <div data-bind="html : Notes()"></div> 现在,我想根据注释的长度向div添加一个类,而不使用Html元素 假设Notes=“Hello”,然后Notes.length=12(带and) 但是我需要替换所有html元素,并且我需要得到长度为5(Hello) 我怎样才能做到这一点呢 <div data-bind="html : Notes(), css:{myclass

我有一个字符串包含html代码。所以我在视图中绑定如下

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

现在,我想根据注释的长度向div添加一个类,而不使用Html元素

假设
Notes=“Hello”
,然后
Notes.length=12(带and)

但是我需要替换所有html元素,并且我需要得到长度为5(Hello)

我怎样才能做到这一点呢

<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;
});

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

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

  return tempElement.innerText.length;
});

您可以通过css属性添加动态类,然后通过属性添加静态类。财产。有关详细信息,请访问以下链接。如果这不起作用,一定要告诉我


您可以通过css属性添加动态类,然后通过属性添加静态类。财产。有关详细信息,请访问以下链接。如果这不起作用,一定要告诉我


不使用htmltext@guradio:如果我使用文本,它将与所有元素一起显示为字符串。这里的问题不在于html绑定。我需要根据Notes()的长度检查条件,不带html元素。而不是使用htmltext@guradio:如果我使用文本,它将与所有元素一起显示为字符串。这里的问题不在于html绑定。我需要根据Notes()的长度检查条件,不带html元素。