我在MySQL中有一个包含电子邮件模板的文本字段。
我构建了一个管理界面,管理员可以在<textarea></textarea>
中显示内容并进行编辑。
效果很好,但我希望能够真正看到空格和\r\n
,比如Notepad ++&#34; Show All Characters&#34;按钮。
以下是电子邮件模板,因为它目前显示在textarea
:
这就是我喜欢看它的方式,就像Notepad ++显示它一样,显示换行符和空格:
我怎么能用PHP做到这一点?我应该从数据库中转义\r\n
以使其显示,还是有其他方法?
更新 我确实设法创建了一个切换按钮,即使在输入时也会显示空格和换行符。
参见示例演示 http://jsfiddle.net/QshDd/80/
我在这里找到了一些有趣的代码:http://www.kristofdegrave.be/2012/03/javascript-change-entered-character-in.html
答案 0 :(得分:1)
方法: 在将文本添加到textarea之前,您可以使用其他一些“特殊”字符替换换行符。然后在post中保存textarea的内容,在mysql中切换带有换行符的“特殊”字符
答案 1 :(得分:1)
您可以使用TinyMCE。以下是参考链接http://www.tinymce.com/tryit/full.php
只需为您的文字区域添加ID
即可<textarea id="tinyeditor" ></textarea>
在您的脚本中自定义您的需求,例如
var editor = new TINY.editor.edit('editor', {
id: 'tinyeditor',
width: 584,
height: 175,
cssclass: 'tinyeditor',
controlclass: 'tinyeditor-control',
rowclass: 'tinyeditor-header',
dividerclass: 'tinyeditor-divider',
controls: ['bold', 'italic', 'underline', 'strikethrough', '|', 'subscript', 'superscript', '|',
'orderedlist', 'unorderedlist', '|', 'outdent', 'indent', '|', 'leftalign',
'centeralign', 'rightalign', 'blockjustify', '|', 'unformat', '|', 'undo', 'redo', 'n',
'font', 'size', 'style', '|', 'image', 'hr', 'link', 'unlink', '|', 'print'],
footer: true,
fonts: ['Verdana','Arial','Georgia','Trebuchet MS'],
xhtml: true,
cssfile: 'custom.css',
bodyid: 'editor',
footerclass: 'tinyeditor-footer',
toggle: {text: 'source', activetext: 'wysiwyg', cssclass: 'toggle'},
resize: {cssclass: 'resize'}
});
最后从文档准备好的
中的textarea数据库中获取值$(document).ready(function(){
var template_data = '<?php echo $database_result; ?>';
$("iframe").contents().find("#editor").html(template_data);
});