HTML textarea 的文本方向改变用 % 符号弄乱了标签结构

问题描述

我有一个用 textarea 创建的短信编辑器,您可以在其中添加文本和预定义的自定义标签,如 %%voucher?id=1%%。

tag in LTR direction

<textarea dir="ltr">%%voucher?id=1%%</textarea>

我的问题是当文本方向改变时,这个标签变成了凭证?id=1%%%%。这弄乱了标签结构。

tag in RTl direction

<textarea dir="rtl">%%voucher?id=1%%</textarea>

我在 tinyMCE 和 CKEditor 中尝试过这个,当定制为 sms 编辑器时,两者都具有相同的行为。

有什么解决办法吗?

解决方法

你可以借助隐形控制符&lrm;来保持方向。

<textarea dir="ltr">%%voucher?id=1&lrm;%%</textarea>
<textarea dir="rtl">%%voucher?id=1&lrm;%%</textarea>

要有条件地添加 &lrm;,您需要解析 textarea 值。 This 会有所帮助。