FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 19835|回复: 7
打印 上一主题 下一主题

【已解决】关于ueditor在IE9中无法编辑的问题

[复制链接]
跳转到指定楼层
楼主
发表于 2013-5-28 13:16:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
环境:IE9,360浏览器6.1,chrome,safari

在页面中使用Window
  1. <x:Window ID="Window1" AutoScroll="true" CloseAction="Hide" runat="server" IsModal="true" Hidden="true" Target="Top"
  2.         EnableResize="true" EnableMaximize="true" EnableIFrame="true" IFrameUrl="about:blank"
  3.         Width="650px" Height="450px" OnClose="Window1_Close">
  4.     </x:Window>
复制代码
然后在Window加载iframe,在iframe页面里面使用ueditor。第一次加载的时候 没有问题,关闭window后重新再打开,则此时ueditor无法被编辑,焦点也无法移到ueditor的编辑器中。想问一下,这个问题怎么解决?

iframe:

  1. <x:ContentPanel ID="ContentPanel1" runat="server"  ShowBorder="true" BodyPadding="5px"
  2.                         ShowHeader="true" EnableBackgroundColor="true" Title="新闻内容">
  3.                         <textarea id="txb_Content" name="txb_Content" rows="1" cols="1"> </textarea>
  4.                     </x:ContentPanel>


  5. <asp:HiddenField ID="hidden_Content" runat="server" />


  6. <script type="text/javascript">
  7.         window.UEDITOR_HOME_URL = "<%= ResolveUrl("~/ueditor/") %>";
  8.     </script>
  9.     <script type="text/javascript" src="/ueditor/editor_config.js"></script>
  10.     <script type="text/javascript" src="/ueditor/editor_all.js"></script>
  11.     <script type="text/javascript">
  12.         var editor = new UE.ui.Editor({
  13.             minFrameHeight: 150,
  14.             initialFrameWidth: '100%',
  15.             initialFrameHeight: 350,
  16.             autoFloatEnabled: false
  17.         });
  18.         editor.render("txb_Content");

  19.         // 提交数据之前同步到表单隐藏字段
  20.         X.util.beforeAjaxPostBackScript = function () {
  21.             editor.sync();
  22.         };

  23.         editor.ready(
  24.             function () {
  25.                 //需要ready后执行,否则可能报错
  26.                 var contents = document.getElementById("<%=hidden_Content.ClientID%>").value;
  27.                 window.setTimeout(function () {
  28.                     editor.setContent(contents);
  29.                 }, 100);
  30.             });
  31.     </script>
复制代码



另外,ueditor在单独页面中,无论加载多少次,使用都没有任何问题。



沙发
 楼主| 发表于 2013-5-28 14:26:32 | 只看该作者
另外在IE9兼容性模式下面也没有问题。不知道三石兄能不能修复这个bug?
板凳
发表于 2013-5-28 16:57:20 | 只看该作者
我刚才在Chrome下测试了,没发现这个问题。

为了更快的解决问题,请按照如下步骤创建重现问题的示例:
1. 到 https://fineui.codeplex.com/releases 下载FineUI空项目 EmptyProjectNet20_FineUI;
2. 基于空项目创建重现问题的示例,并打包上传。

注:涉及数据读取操作时,请在内存中模拟实现,不要连接数据库。
地板
 楼主| 发表于 2013-5-28 17:42:12 | 只看该作者
本帖最后由 消失的键盘 于 2013-5-28 17:44 编辑

论坛上传附件有限制,我改用邮箱发给你了。发到你的QQ邮箱里面的,请查收!谢谢
最好你能在win7 IE9的环境下测试一下。多谢
5#
发表于 2013-5-28 22:13:23 | 只看该作者
消失的键盘 发表于 2013-5-28 17:42
论坛上传附件有限制,我改用邮箱发给你了。发到你的QQ邮箱里面的,请查收!谢谢
最好你能在win7 IE9的 ...

刚试了你的例子,在Firefox,Chrome,IE7/8下都是好的。 IE9下的确有问题,没有输入焦点,有可能是ueditor的问题,明天再看
6#
 楼主| 发表于 2013-5-29 09:42:21 | 只看该作者
sanshi 发表于 2013-5-28 22:13
刚试了你的例子,在Firefox,Chrome,IE7/8下都是好的。 IE9下的确有问题,没有输入焦点,有可能是uedito ...

是的,我已经做过测试,唯独在IE9 下有问题。另外在装有IE9的系统下 其他浏览器都有问题。

另外我感觉不是ueditor的问题。因为如果把ueditor直接放在firstpage里面(与http://fineui.com/demo/#/demo/aspnet/ueditor.aspx 一样)是不会有问题的。只有在我给你的demo里面,使用window hide(3种情况都一样)以后,才会出现这个问题。感觉是 window 重新弹出以后, texteara 未被 ueditor 的 js 重新实例化一样。不知道我猜得有没有错。
7#
发表于 2013-5-29 17:11:38 | 只看该作者
已确认是个BUG,示例会在下个版本更新。

+更新aspnet/ueditor.aspx、aspnet/ueditor_two.aspx.
                -修正IE9下编辑框无法获取焦点的问题,将UEditor的初始化代码放在onReady函数中(消失的键盘 )。

可以下载源代码看改动:
  1. <script type="text/javascript">
  2.         var editor;
  3.         function onReady() {
  4.             editor = new UE.ui.Editor({
  5.                 initialFrameWidth: '100%',
  6.                 initialFrameHeight: 350,
  7.                 minFrameHeight: 350,
  8.                 autoFloatEnabled: false,
  9.                 focus: true
  10.             });
  11.             editor.render("UEditor1");
  12.         }


  13.         // 提交数据之前同步到表单隐藏字段
  14.         X.util.beforeAjaxPostBackScript = function () {
  15.             editor.sync();
  16.         };

  17.         // 更新编辑器内容
  18.         function updateUEditor(content) {
  19.             window.setTimeout(function () {
  20.                 editor.setContent(content);
  21.             }, 100);
  22.         }
  23.     </script>
复制代码
8#
发表于 2013-6-7 20:07:05 | 只看该作者
求大神指教   我用不起ueditor
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-9-9 14:57 , Processed in 0.046161 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表