如何防止 FCKeditor(富编辑器)删除表中的变量?

发布于 2024-10-28 12:47:14 字数 733 浏览 6 评论 0原文

如果我在 MediaWiki 页面上有一个像这样的简单表格:

{|{{#vardefine:new|style="background: none repeat scroll 0% 0% gold;"}}
|- {{#var:new}}
| hi
|}

并且我按 Rich Editor 切换到 FCKeditor,表格代码将更改为:(

{|
|-
| hi
|}

因此 #vardefine 和 #var 被删除!)

我有 VariablesExtension 已安装。

我怎样才能防止这种情况发生?我将其发布在这里(SO)是因为我认为这是一个可以使用页面上的不同代码来修复的问题。请注意,如果代码不在表中,则没有问题。

注意:如果表中没有变量,也没有问题:

{|style="background: none repeat scroll 0% 0% gold;"
|-
| no variable
|}

If I have a simple table on a MediaWiki page like this:

{|{{#vardefine:new|style="background: none repeat scroll 0% 0% gold;"}}
|- {{#var:new}}
| hi
|}

and I press Rich Editor to switch to FCKeditor, the table code will change to:

{|
|-
| hi
|}

(So #vardefine and #var are removed!)

I have the VariablesExtension installed.

How can I prevent this? I'm posting it here (SO) because I assume this is a problem which can be fixed using different code on the page. Note that if the code is not in a table, there is no problem.

Note: if there are no variables in the table, there is also no problem:

{|style="background: none repeat scroll 0% 0% gold;"
|-
| no variable
|}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

源来凯始玺欢你 2024-11-04 12:47:15

我找到了解决方案,但它有点像怪物。您需要创建一个模板并在表中使用它。在此示例中,第三个(也是最后一个)参数定义单元格的颜色(之前由表中的变量定义 - 现在该变量已移至模板)。

模板将如下所示:

<!-- Get color for this row
-->{{#switch: {{{3|new}}}|
 | New
 | new
 | n = {{#vardefine:color|bgcolor=lightsalmon{{!}}}}
 | Open
 | open
 | o = {{#vardefine:color|bgcolor=khaki{{!}}}}
 | Closed
 | closed
 | c = {{#vardefine:color|bgcolor=lightgreen{{!}}}}
 | #default = {{#vardefine:color|bgcolor=gold{{!}}}}
}}<!-- Add color for each cell in the row -->
|-
| {{#var:color}}{{{1|parameter 1}}}
| {{#var:color}}{{{2|parameter 2}}} }}

表格将如下所示:

{{template_name|parameter 1|parameter 2|parameter 3}}
{{template_name|parameter 1|parameter 2|parameter 3}}
{{template_name|parameter 1|parameter 2|parameter 3}}

I found the solution but it is a bit of a monster. You need to create a template and use it in the table. In this example, the third (and final) parameter defines the colour of the cells (previously defined by a variable in the table - now that variable has been moved to the template).

The template will look like this:

<!-- Get color for this row
-->{{#switch: {{{3|new}}}|
 | New
 | new
 | n = {{#vardefine:color|bgcolor=lightsalmon{{!}}}}
 | Open
 | open
 | o = {{#vardefine:color|bgcolor=khaki{{!}}}}
 | Closed
 | closed
 | c = {{#vardefine:color|bgcolor=lightgreen{{!}}}}
 | #default = {{#vardefine:color|bgcolor=gold{{!}}}}
}}<!-- Add color for each cell in the row -->
|-
| {{#var:color}}{{{1|parameter 1}}}
| {{#var:color}}{{{2|parameter 2}}} }}

The table will look like this:

{{template_name|parameter 1|parameter 2|parameter 3}}
{{template_name|parameter 1|parameter 2|parameter 3}}
{{template_name|parameter 1|parameter 2|parameter 3}}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文