Tinymce代码编辑器在JTable Grid中只读

时间:2016-04-30 07:33:43

标签: javascript jquery tinymce

我的每一行都有包含编辑按钮的JQuery jTable网格。

FormEditor以模态打开,并且正确显示并且正常工作没有问题,除了当我打开源代码编辑器时我发现textarea处于只读模式时,我需要使其可编辑。

我试过几个版本的tinymce。

源代码编辑器中textarea只读的主要原因是什么,以及如何解决这个问题。 ?

2 个答案:

答案 0 :(得分:0)

我猜/假设你正在使用Bootstrap作为你的模态(如果你澄清了你用来创建模态的内容,它会帮助别人。)

Bootstrap模式具有代码,可以阻止任何其他内容在启用时(通过设计)获得焦点。当TinyMCE的代码视图出现时,它想要获得焦点,但Bootstrap正在阻止这种情况发生。您应该可以使用以下代码覆盖它:

$('#myModal').on('shown.bs.modal', function() {
    $(document).off('focusin.modal');
});

(这假定Bootstrap 3并且您不介意使用jQuery,这是此问题上的标签之一)

答案 1 :(得分:0)

jTable使用jqueryUI模式对话框,这就是问题的原因。

我在这里找到了最接近我问题的答案: TinyMCE opened in jqueryUI modal dialog

readonly List<string> proxies = new List<string>();

WebProxy RandomProxy
    {
        get
        {
            return proxies.Count == 0 ?
                null :
                new WebProxy(proxies[rnd.Next(proxies.Count)]);

        }
    }

proxies.Clear();
proxies.AddRange(txtProxy.Lines.Where(p => !String.IsNullOrWhiteSpace(p)));

var proxy = RandomProxy;
var wc = new WebClient { Proxy = proxy };
  

编辑:这是jQuery UI的另一个解决方案&gt; = 1.10.2:

     

用安慰剂函数替换_focusTabbable原型方法修复它:

$(document).on('focusin', function(e) {
if ($(event.target).closest(".mce-window").length) {
    e.stopImmediatePropagation();
}});

此解决方案位于此处:prevent jquery ui dialog from setting focus to first textbox