twitter-bootstrap – 如何在Bootstrap Modal中使用CKEditor?

前端之家收集整理的这篇文章主要介绍了twitter-bootstrap – 如何在Bootstrap Modal中使用CKEditor?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我在基于Bootstrap模板的 HTML页面中使用 CKEditor插件,那么它的效果非常好,但是如果我将编辑器插入到这样的Bootstrap Modal中
<!-- Modal --> 
<div class="modal fade" id="modalAddBrand" tabindex="-1" role="dialog" aria labelledby="modalAddBrandLabel" aria-hidden="true">   
  <div class="modal-dialog modal-lg">
     <div class="modal-content">
       <div class="modal-header">
         <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
         <h4 class="modal-title" id="modalAddBrandLabel">Add brand</h4>
       </div>
       <div class="modal-body">
             <form>
             <textarea name="editor1" id="editor1" rows="10" cols="80">
             This is my textarea to be replaced with CKEditor.
             </textarea>            <script>
             CKEDITOR.replace('editor1');
             </script>
             </form> 
       </div>
       <div class="modal-footer">
         <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
         <button id="AddBrandButton" type="button" class="btn btn-primary">Save</button>
       </div>
     </div>   
   </div> 
</div>

编辑器工作,但编辑器弹出窗口上的所有表单控件都将被禁用,如果您尝试添加链接或图像,例如,由于输入被禁用,您无法插入URL或任何描述.

这个问题的任何解决方法

这是一个小提琴的例子:http://jsfiddle.net/7zDay/

解决方法

这应该有助于 http://jsfiddle.net/pvkovalev/4PACy/
$.fn.modal.Constructor.prototype.enforceFocus = function () {
    var $modalElement = this.$element;
    $(document).on('focusin.modal',function (e) {
        var $parent = $(e.target.parentNode);
        if ($modalElement[0] !== e.target && !$modalElement.has(e.target).length
            // add whatever conditions you need here:
            &&
            !$parent.hasClass('cke_dialog_ui_input_select') && !$parent.hasClass('cke_dialog_ui_input_text')) {
            $modalElement.focus()
        }
    })
};

更新2016年10月

CKEditor的CDN链接已经更改,所以我更新了jsfiddle

猜你在找的Bootstrap相关文章