CKEditor 4下拉按钮插入占位符

时间:2014-10-15 23:05:19

标签: jquery ckeditor

我找到了两个独立的插件:StrInsertPlaceholder。第一个插件创建下拉菜单,插入字符串和第二个插件插入占位符。

这里是StrInsert插件的屏幕截图: strinsert

Placeholder插件: enter image description here

互联网上有很多问题需要类似的功能(制作插入占位符的下拉列表),但是没有提供此功能的解决方案/插件。这是插件的链接:StrInsertPlaceholder

我也在ckeditor论坛上提出了这个问题。但是,如果以前有人在这里做过这件事,我需要你的帮助。

============================编辑=============== ==========================

这是StrInsert的作用, enter image description here当点击其中一个下拉菜单时,它会在编辑器中插入text。但是,我希望它插入text

,而不是插入placeholder 可以使用另一个名为Placeholder的插件插入

PlaceHolder,它与text的区别如何?它有黄色背景颜色,最重要的是,用户无法删除字母enter image description here

3 个答案:

答案 0 :(得分:4)

是的,这可以完成,可以用你已经拥有的东西来完成。

总之 - Placeholder插件可以很好地将占位符表示为自包含的黄色元素,而StrInsert插件提供了一种方便的方法,可以从下拉列表中插入预定义的字符串,而不是让用户输入它们进入一个对话框。

因此,一个简单的解决方案是充分利用两者--StrInsert插入占位符字符串。它适用于您描述和使用每个插件的标准功能。

步骤如下:

  1. 从标准安装的两个插件开始。我不认为我需要在这里描述一下。

  2. StrInsert插件允许您在其插件脚本文件中定义其字符串值。不要在那里放置常规字符串,而是以占位符格式添加字符串。

    e.g。更改以下默认字符串...

    //可以选择的字符串数组将被插入到编辑器中 var strings = []; strings.push([' @@ FAQ :: displayList()@@','常见问题解答','常见问题解答']); strings.push([' @@ Glossary :: displayList()@@',' Glossary',' Glossary']); strings.push([' @@ CareerCourse :: displayList()@@','职业课程','职业课程']); strings.push([' @@ CareerProfile :: displayList()@@','职业档案','职业档案']);

    使它们成为理想的占位符...

    //可以选择的字符串数组将被插入到编辑器中 var strings = []; strings.push([' [[Something]]',' Something',' Something']); ...

  3. 最后,如果您不需要占位符按钮,则可以使用ckeditor文件夹中正常config.js中的条目将其删除(仅按钮)。可能已经有一个removeButtons行,你可以添加CreatePlaceholder,但无论如何它看起来像这样:

    config.removeButtons =' CreatePlaceholder';

答案 1 :(得分:0)

我知道这有点旧,但我创建了一个插件来完成这项任务。

我为CKEditor创建了“Placedown Tokens From Dropdown”插件。它的工作方式与Simon所讨论的strinsert插件非常相似,但具有更大的灵活性。

您可以传入包含'格式'的配置(如果您不想使用pleceholder插件格式)。它默认使用占位符格式[[something]],但可以使用其他任何东西(例如{{something}})。

占位符令牌可以通过配置作为JavaScript数组传入。该插件将为您完成剩下的工作。

我希望这有助于

https://ckeditor.com/cke4/addon/placeholder_select

答案 2 :(得分:0)

尝试使用Token Insertion插件。它使用预配置的值创建选择下拉列表。您可以配置值,它是下拉列表中的名称以及插入的值前缀/后缀符号