jWysiwyg编辑器中的HTML字符

| 我对这个问题可能迷失了。我长时间在使用名为jWysiwyg的插件使用jQuery。 每当我在编辑器中输入HTML实体名称或数字
©
©
时,它就会恢复为实际字符。对此没有任何功能,我认为它必须是字符设置。 对于某些字符,我对此没有任何问题-但不是全部,因为在张贴时,它们中很少有人以方形框或黑色菱形出现在实际网页上。 我试图尽可能地更改字符集,但这不能解决我的问题。 当其他人遇到这个问题并且有解决的办法了吗?     
已邀请:
        这是因为WYSIWYG编辑器呈现html实体,例如©。到它们的字符值(版权符号),就以相同的方式在所见即所得编辑器中显示为图像。我在使用其他基于jQuery的编辑器时遇到了类似的问题。 我认为您可以解决的唯一方法是,在提交编辑器时将其转换回html实体,或者不太可能正常工作,在每个html实体上用
&
替换字符串&。这样,它将显示为&copy而不是版权符号,这应该使(?)将其存储为&copy而不是©符号... 也许这会有所帮助吗?这是为jwysiwyg制作的实用程序函数,用于将事物发布为其html实体代码。尽管动态地使用
<code>
标签的想法也可能很好用:P,但是您只需要在服务器上使用strip_tags。     
        您以一种有趣的方式回答了自己的问题。 当我第一次加载此页面时,我注意到©,并且对您要执行的操作感到困惑。然后,您对其进行了编辑,然后©变成了“ 1”。如果您查看源代码,您会看到,当您在StackOverflow的编辑器中单击“代码块”按钮时,复制符号就会以您想要的方式显示。 这是通过将其包装在html的代码元素中完成的(您可以右键单击>查看源代码以查看...
<p>Whenever I enter an HTML Entity Name or Number <code>&amp;copy;</code> or <code>&amp;#169;</code> within the editor it reverts to the actual character. There is no function for this, which I assume it must be character setting.</p> 
我从未使用过您引用的编辑器;但看起来他们只是使用默认的javascript事件。因此,要实现您的目标,您可能必须向编辑器中添加一个事件,然后在onKeyUp上搜索文本以查找特殊字符并将其包装在代码中。因此,伪代码就像(我没有测试过,所以可能有点bug)...
  $(\"textarea\").wysiwyg({
    keyup: function(event) {

      var editorContent = getContent();  // Or whatever you call to get the content

      // Replace all instances of $# followed by 3 digits and a semicolon, with
      // the same thing, only wrapped in a code block.
      editorContent.replace(/&#[\\d]{3};/g, <code>&#[\\d]{3};<\\\\code>); 

      // Again, I don\'t know if this function exists, just throwing it out
      // there so you get the general idea.
      setEditorContent(editorContent);
    }
  });
正如我说的,我没有尝试。因此,请根据您的最终用途来修改答案。     

要回复问题请先登录注册