【问题标题】:Submitting form data from modal, modal won't close从模态提交表单数据,模态不会关闭
【发布时间】:2018-12-18 17:29:23
【问题描述】:

我正在创建一种允许用户基于模板创建页面的内容管理系统。

我有一个包含 2 个占位符 div 的页面。下面是一个例子。当您单击 div 时,会弹出一个模式,允许用户使用 TinyMCE 创建内容。这个想法是设置内容,点击“获取数据”按钮,让模式消失,编辑器中的内容现在显示在原始 div 中。

当我点击提交时,这可以将内容放入 div 中。模态的主体此时消失了,但通常位于引导模态下方的灰色不透明屏幕仍然存在,我不能再在页面上做任何事情。我想知道我在这里做错了什么以及如何修复它以在我点击提交按钮时完全关闭模式。

    <div class="leftContent">
        <div class="modal fade bd-example-modal-lg" id="leftFiftyModal" tabindex="-1" role="dialog" aria-labelledby="leftFiftyLabel" aria-hidden="true">
            <div class="modal-dialog modal-lg" role="document">
              <div class="modal-content">
                <div class="modal-header">
                  <h5 class="modal-title" id="leftFiftyModal">Content Library:</h5>
                  <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                  </button>
                </div>
                <div class="modal-body">
                    <h3>Create your own content</h3>
                    <form id="form-data" method="post">
                      <textarea id="mytextarea"></textarea>
                      <input type="submit" value="Get Data">
                    </form>
                </div>
                    <div class="modal-footer">
                        <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
                        <button type="button" class="btn btn-primary">Save changes</button>
                    </div>
               </div>
            </div>
        </div>
    </div>

    <script type="text/javascript">
        $(document).ready(function(){

        $("#form-data").submit(function(e){

            var content = tinymce.get("mytextarea").getContent();

            $(".leftContent").html(content);

            return false;

        });

        jQuery.noConflict();
        $('#leftFiftyModal').modal('hide');

    });
    </script>

【问题讨论】:

    标签: javascript tinymce


    【解决方案1】:

    试试:

    <script type="text/javascript">
        $(document).ready(function(){
    
        $("#form-data").submit(function(e){
    
            var content = tinymce.get("mytextarea").getContent();
    
            $(".leftContent").html(content);
    
            jQuery.noConflict();
    
            $('#leftFiftyModal').modal('hide');
    
            return false;
    
        });
    
    });
    </script>
    

    【讨论】:

    • 还是不行。这很奇怪,因为模态本身正在消失,但灰色覆盖层却没有。我以前从未见过这种情况
    • 啊,我用 $('.modal-backdrop').remove(); 修复了它
    猜你喜欢
    • 2014-08-09
    • 1970-01-01
    • 2016-01-01
    • 1970-01-01
    • 2018-10-31
    • 2021-11-17
    • 1970-01-01
    • 1970-01-01
    • 2021-01-09
    相关资源
    最近更新 更多