【问题标题】:Append image to rich text editor dosen't work in IE将图像附加到富文本编辑器在 IE 中不起作用
【发布时间】:2012-04-06 19:43:38
【问题描述】:

这就是我将图像附加到帖子的方式。它显示在除 IE 之外的所有浏览器中

<script type="text/javascript">
image = '<img src="http://forum.site.com/.../<?php echo $_SESSION['user_id']; ?>/question_reply_images/<?php echo $image_name; ?>" alt="<?php echo $alt; ?>" />';
document.getElementById('editor1').innerHTML += '<span style="width:100%; float:left;"' + image + '</span>';
window.location = '#reply_textbox';
</script>

这是一个过程:用户在文本区域中写入文本(使用 WYSIWYG 编辑器 -- CKeditor)然后将选择一个文件并上传它。然后将其附加到文本区域的末尾。这甚至不会显示在 IE 中。图片正在上传,但不会显示在文本区域中。

【问题讨论】:

  • 要附加图像的文本区域的 ID。这是一个所见即所得的编辑器,例如CKeditor

标签: javascript html rich-text-editor


【解决方案1】:

如果“editor1”是 TEXTAREA,并且您将 IMAGE 标记放入,则无论如何这都是无效的 HTML。如果这是发生的事情,那么您很幸运该图像显示在任何浏览器中。确保 IMAGE 标记包含在旨在容纳此类内容的元素中。

附加信息

如果你使用W3C验证器,或者搜索TEXTAREA的allowed children,你会发现它不允许 img或者其他标签在里面。除了你的其他问题,你应该对非 IE 浏览器显示图像感到惊讶,而不是因为 IE 没有而感到沮丧。

【讨论】:

  • @Graham:不要将图像放入文本区域。将图像放在 文本区域之后。
  • 好主意,但是......提交后如何将其包含在帖子中?
  • @Graham:我不确定你在处理什么。对我来说听起来像是一个不同的问题。
  • 让我以不同的方式重申。仅在 IE 中...我不能将任何 HTML 附加到所见即所得,例如CKeditor 文本区域。问题是当用户将图像/任何 html 上传到 textarea 时。发生的情况是使用附加的 img 标记/任何 html 刷新页面。在 IE 中,任何包含在 HTML 中的内容都会被完全忽略,并且不会附加到 textarea。对不起,我可能解释得很奇怪。基本上,当附加到 IE 中的richtextarea 时,HTML 中包含的任何内容都会被忽略。
  • 没关系,我想通了...出于某种原因,用 value 替换 innerHTML 对 IE 来说是成功的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-30
  • 2022-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多