【问题标题】:Jeditable with TinyMCE and a Character Count/limiter可使用 TinyMCE 和字符计数/限制器进行编辑
【发布时间】:2011-07-01 13:16:42
【问题描述】:

我整天都在试图理解这一点,但没有快乐....你是我唯一的希望 oni wan konobi!

我查看了 TinyMCE 的 max_chars 插件,如果 TinyMCE 自己实现,它可以正常工作。

Jeditable 还可以使用自定义类型计算/限制字符数。见这里:http://www.appelsiini.net/projects/jeditable/custom.html 如果它自己实现,这同样会很好。

我需要用 Jeditable 实现 TinyMCE。我已经做到了,而且效果很好。但为了做到这一点,必须有一个 TinyMCE 的自定义类型。

这是我针对该类型的代码:

$.editable.addInputType('mce', {
element : function(settings, original) {
    var textarea = $('<textarea id="'+$(original).attr("id")+'_mce"/>');
    if (settings.rows) {
       textarea.attr('rows', settings.rows);
    } else {
       textarea.height(settings.height);
    }
    if (settings.cols) {
       textarea.attr('cols', settings.cols);
    } else {
       textarea.width(settings.width);
    }
    $(this).append(textarea);
       return(textarea);
    },
    plugin : function(settings, original) {
       tinyMCE.execCommand("mceAddControl", true, $(original).attr("id")+'_mce');

       },
    submit : function(settings, original) {
       tinyMCE.triggerSave();
       tinyMCE.execCommand("mceRemoveControl", true, $(original).attr("id")+'_mce');
       },
    reset : function(settings, original) {
       tinyMCE.execCommand("mceRemoveControl", true, $(original).attr("id")+'_mce');
       original.reset();
}
});

这是 Jeditable 字符计数器的代码:

$.editable.addInputType('charcounter', {
element : function(settings, original) {
    var textarea = $('<textarea />');
    if (settings.rows) {
        textarea.attr('rows', settings.rows);
    } else {
        textarea.height(settings.height);
    }
    if (settings.cols) {
        textarea.attr('cols', settings.cols);
    } else {
        textarea.width(settings.width);
    }
    $(this).append(textarea);
    return(textarea);
},
plugin : function(settings, original) {
    $('textarea', this).charCounter(settings.charcounter.characters,   settings.charcounter);
}
});

有没有办法让这两个一起工作?在理想的世界中,我只能调用 2 种类型。我的调用代码是:

$(function(){
   $(".editable_profbod").editable('save.asp?PageID=<%=PageID%>&SectionID=1',
    {
      type : 'mce',
  indicator : 'Saving...',
      tooltip : 'Click to edit...',
      name : 'note_text',
      submit : 'OK',
      cancel : 'Cancel',
      height : '100px',
  onblur: 'ignore',
  cssclass: 'editable'
   });

有没有办法合并这两种类型?我真的非常需要限制和显示字符数。理想情况下,我想使用可编辑的方式来显示和限制计数。

非常感谢, 戴夫

【问题讨论】:

    标签: jquery tinymce character counter jeditable


    【解决方案1】:

    您可能对另一种解决方案持开放态度:您可以编写自己的插件来解决这个问题。这会很简单。这是指向howto write a tinymce plugin 的链接。 您需要做的就是执行 onKeyDown 以获取内容并计算字符数。 根据值,您可能会停止插入键入的字符。

    【讨论】:

    • 不幸的是,这对我不起作用,因为页面上有多个 tinymce 实例,每个实例都需要自己的内容长度。这就是为什么我特别热衷于尝试和实施 Jeditable 方式。
    • 您可以使用自定义 tinymce 初始化参数并使用不同的实例初始化每个 tinymce 实例 - 这将使您能够定义不同的内容长度
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-01
    • 1970-01-01
    • 2022-07-15
    • 2012-05-04
    • 2019-05-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多