我为了限制TinyMCE中的角色而搜索了很多内容,但没有任何效果!如果用户输入超过500个字符,如何创建消息框?
答案 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
});