我使用TinyMCE编辑器,并希望将字数值分配给敲除变量。
设置编辑器是可以的,它会显示字数统计值,但是我无法理解如何获取实际值。

这是敲除值的视图:

<div data-bind="with: SelectedText">
    No. of words is: <span data-bind="value: TextWordCount"></span>
</div>


但是,如何将其连接到TinyMce字数统计?

这是一个小提琴:http://jsfiddle.net/ZvKTn/1/

最佳答案

我对您的提琴进行了一些更改以使其正常工作:
http://jsfiddle.net/ZvKTn/3/

首先,

<span data-bind="value: TextWordCount"></span>


必须使用“文本”绑定:

<span data-bind="text: TextWordCount"></span>


除此之外,您还需要与TinyMCE onKeyUp事件挂钩,以便在编辑器中键入文本时获得实时更新。

同样,您用于克隆数据的代码也是有问题的。

我将TextWordCount从可观察的更改为计算的:

self.TextWordCount = ko.computed(function() {
    // First remove all html tags
    var text = self.TextbatchText().replace(/<[^>]*>/g, '');
    // Tiny MCE inserts an extra &nbsp; at the end if you "double space" the end of your sentence. This replaces it with a normal space
    text = text.replace(/&nbsp;/g, ' ');
    // This merges all spaces and tabs following each other into a single space
    text = text.replace(/[\s\t]+/g, ' ');
    // This removes spaces and the begin and end of the text
    text = text.replace(/^\s*/, '').replace(/\s*$/, '');

    // This splits the string into an array of words separated by a space.
    return text.split(' ').length;
});

10-06 12:25