TinyMCE限制用户输入的字符

时间:2013-05-18 19:30:46

标签: javascript jquery tinymce

我为了限制TinyMCE中的角色而搜索了很多内容,但没有任何效果!如果用户输入超过500个字符,如何创建消息框?

2 个答案:

答案 0 :(得分:1)

知道了! 新版本使用ed.on(“KeyDown”,function(ed,evt){而不是ed.onKeyDown.add(function(ed,evt){

因此功能变为:

setup : function(ed) {
                    var max_tekens = <?php echo $max_aantal_tekens_excl_opmaak; ?>;
                    var beschikbaar_voor_opmaak = <?php echo ($max_aantal_tekens_incl_opmaak -
                    $max_aantal_tekens_excl_opmaak); ?>;
                    ed.on("KeyDown", function(ed,evt) {
                      aantal_tekens_zonder_opmaak = tinyMCE.activeEditor.getContent().replace(/(<
([^>]+)>)/ig,"").length;
                      aantal_tekens_met_opmaak = tinyMCE.activeEditor.getContent().length;
                      var key = ed.keyCode;
                      $('#omschrijving_wijzigen_tekens').html(max_tekens - aantal_tekens_zonder_opmaak);
                      if (aantal_tekens_met_opmaak > (max_tekens+beschikbaar_voor_opmaak)){
                          alert('U hebt het maximaal aantal tekens nog niet helemaal bereikt, maar u gebruikt veel opmaak dat ook ruimte kost. Verwijder tekens of gebruik minder opmaak (vet, cursief, ondertrepen).');
                          ed.stopPropagation();
                          ed.preventDefault();
                      }
                      else if (aantal_tekens_zonder_opmaak > max_tekens-1 && key != 8 && key != 46){
                           alert('U hebt het maximaal aantal tekens bereikt.');
                           ed.stopPropagation();
                           ed.preventDefault();
                      }
                      else if(aantal_tekens_zonder_opmaak > (max_tekens - 25)){
                          $('#omschrijving_wijzigen_max_tekens').css('color','red');
                      }

                      else {
                          $('#omschrijving_wijzigen_max_tekens').css('color','gray');
                      }
                    });
                }

答案 1 :(得分:0)

使用TinyMCE 4,您可以加入on change事件:

$(document).on('tinymce:changed', function() {
    content = tinyMCE.activeEditor.getContent();
    // check length of content and do whatever you want
});