首页 > 解决方案 > 如果tinymce.get()中的id如何触发类而不是

问题描述

为了计算 tinyMCE 文本区域中的字符,我使用以下代码:

<textarea id="txtTinyMCE" rows="2" cols="20"></textarea>
    
<div id="character_count"></div>

<input type="submit" value="Submit" onclick="return ValidateCharacterLength();" />

window.onload = function () {
     tinymce.init({
          selector: 'textarea',
          width: 400,
          setup: function (ed) {
              ed.on('keyup', function (e) {
                  var count = CountCharacters();
                  document.getElementById("character_count").innerHTML = "Characters: " + count;
              });
          }
     });
}

function CountCharacters() {
    var body = tinymce.get("txtTinyMCE").getBody();
    var content = tinymce.trim(body.innerText || body.textContent);
    return content.length;
};
function ValidateCharacterLength() {
    var max = 20;
    var count = CountCharacters();
    if (count > max) {
        alert("Maximum " + max + " characters allowed.")
        return false;
    }
    return;
}

问题:我有多个 textarea,所以我不能在 textarea 中使用id。我使用一个类名:

<textarea class="tinymce" rows="2" cols="20"></textarea>

现在的问题是这一行:

var body = tinymce.get("txtTinyMCE").getBody(); // txtTinyMCE is id

如何使用if id触发类名tinymce.get()

标签: javascriptclasstinymce

解决方案


activeEditor改为触发。

<textarea class="whatever" rows="2" cols="20"></textarea>

现在改变你的线路

var body = tinymce.get("txtTinyMCE").getBody();

var body = tinymce.activeEditor.getBody();

推荐阅读