大拿,请解惑,关于tinyMCE,百思不得其解

qinqipm 2014-04-16 07:32:56
今天在调试tinyMCE中发现一个问题,调用tinyMCE的区域是这样的:

<textarea id="ajaxfilemanager" name="ajaxfilemanager" style=" height:400px; width:100%;"></textarea>

当我用JS这样调用的时候,可以正常的显示:

<script>
window.onload=function()
{
var text_id=document.getElementById("ajaxfilemanager");
var content='<P>下面我给大家讲讲javascript函数:</P><PRE class=js name="code"><script> <BR>function show() <BR>{ <BR>alert("hello world"); <BR>} <BR></script></PRE><P> 结果如图:<BR><IMG title=tu1 alt=tu1 src="uploaded/010P0000240111S5344-1.jpg" width=150 height=150 data-mce-src="uploaded/010P0000240111S5344-1.jpg"></P>';

text_id.value=content;
}
</script>

效果如图:


可是我直接用PHP,返回数据库中的内容却出现了问题!!!!
PHP代码如下调用:

<textarea id="ajaxfilemanager" name="ajaxfilemanager" style=" height:400px; width:100%;"><?php echo $fillrow['body'];?></textarea>

得到的效果却是如图:


说明:PHP中 $fillrow['body']的内容与JS的content是一致的
出现这样的问题是怎么回事????
因为是刚刚开始学习PHP和JS,想请问下对于编辑器tinyMCE,我这样将内容返回到tinyMCE正确吗?大拿们是怎么解决这个问题的呢???难道一定要用AJAX将MYSQL里面的数据调出用JS返回吗?有没有更方便的解决方案?
...全文
306 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
qinqipm 2014-04-17
  • 打赏
  • 举报
回复
大拿们,快快现身吧!!!菜鸟真的不懂啊!!!
qinqipm 2014-04-17
  • 打赏
  • 举报
回复
请问下,通常人们用编辑器tinyMCE的时候,如何将mysql的内容返回到tinyMCE的呢?我想问下,大拿们的方法是什么?我是刚刚学习JS的,想了解下普遍的做法是什么?
Go 旅城通票 2014-04-17
  • 打赏
  • 举报
回复
自己查看源代码,你的<>这种符号应该已经不是他对应的实体<和>了,被替换成成了<> php将替换下body内容或者是否有什么函数直接将<>替换为对应的实体
qinqipm 2014-04-17
  • 打赏
  • 举报
回复
问题已经解决了!非常感谢showbo和 zyl_lyr1019的回答,主要是在textarea调用的使用要使用htmlspecialchars进行实体转化: 即 <textarea id="ajaxfilemanager" name="ajaxfilemanager" style=" height:400px; width:100%;"> <?php echo htmlspecialchars ($fillrow['body']); ?> </textarea> 菜鸟还有很多问题,希望以后能够得到你们的回复!谢谢啦!
qinqipm 2014-04-17
  • 打赏
  • 举报
回复
我想这样用: <textarea id="ajaxfilemanager" name="ajaxfilemanager" style=" height:400px; width:100%;"><?php echo $fillrow['body'];?></textarea> 可是却得不到我想要的 ,肿么办,大牛们!
qinqipm 2014-04-17
  • 打赏
  • 举报
回复
是的 的确是把 script 当成脚本加载了 可是我不知道该怎么办,我用select 出的数据库的内容具体数据库内容如图:

读取数据库:
<?php
$fillsql="SELECT * FROM entries WHERE id=".$validentry.";";
$fillres=mysql_query($fillsql)or die("查询错误!".mysql_error());
$fillrow=mysql_fetch_assoc($fillres);
?>
我想直接这么用:
<textarea id="ajaxfilemanager" name="ajaxfilemanager" style=" height:400px; width:100%;">$fillrow['body']</textarea>
可是得出的结果却是:


请问我该怎么处理这个问题呢?
张运领 2014-04-17
  • 打赏
  • 举报
回复
应该就是一楼说的问题了,你使用浏览器调试一下,看看对应的位置,是不是加载了一个<script>的标签 看图像的显示,应该是把script当成脚本加载了。 得先确定问题,才能对应的解决问题。 先看看吧。

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧