jQuery MiniUI

标题: miniUI与jquery的fileupload不兼容 [打印本页]

作者: Lara    时间: 2017-2-21 15:21:27     标题: miniUI与jquery的fileupload不兼容

1、父页面:
//弹出批量导入页面
    function batchImport() {
        mini.open({
            url: '../xxx/xxx, //页面地址
            title: '批量导入', //标题
            width: 860,
            height: 570,
            showCloseButton: true, //显示关闭按钮
            showMaxButton: true, //显示最大化按钮
            showModal: true, //显示遮罩
            loadOnRefresh: false, //true每次刷新都激发onload事件
            onload: function () { //弹出页面加载完成

            },
            ondestroy: function (action) { //弹出页面关闭前
                if (action == "ok") {
                    grid.reload();
                }
            }
        });
    }


2、子页面:

方式①报错:Cannot read property 'getComponents' of null(子页面打开后直接关闭时报错)
    <script src="~/Scripts/boot.js" type="text/javascript"></script>
   <script src="~/Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
    <script src="~/Scripts/jquery.ui.widget.js" type="text/javascript"></script>
    <script src="~/Scripts/jquery.fileupload/jquery.iframe-transport.js" type="text/javascript"></script>
    <script src="~/Scripts/jquery.fileupload/jquery.fileupload.js" type="text/javascript"></script>

方式②报错:$(...).fileupload is not a function(使用fileupload上传文件时报错
   <script src="~/Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
    <script src="~/Scripts/jquery.ui.widget.js" type="text/javascript"></script>
    <script src="~/Scripts/jquery.fileupload/jquery.iframe-transport.js" type="text/javascript"></script>
    <script src="~/Scripts/jquery.fileupload/jquery.fileupload.js" type="text/javascript"></script>
    <!--注意:上面的js会导致报错“Cannot read property 'getComponents' of null”,故boot.js放到最后加载-->
    <!--后发现放到最后fileupload就会报错-->
    <script src="~/Scripts/boot.js" type="text/javascript"></script>






作者: dforce    时间: 2017-2-21 15:25:33

请提供简单的项目来测试
我们没用过这个jquery插件
作者: Lara    时间: 2017-2-22 11:02:02

写了一个简单的例子发现:将boot.js放到第一个加载没问题;放到最后加载才会报错(不过是一个新的错误:$.replace is not a function)。

看来还是项目里面的“水太深”
作者: dforce    时间: 2017-2-23 11:22:10

Lara 发表于 2017-2-22 11:02
写了一个简单的例子发现:将boot.js放到第一个加载没问题;放到最后加载才会报错(不过是一个新的错误{:3_4 ...

做例子我们可以帮你分析分析的
作者: Lara    时间: 2017-2-23 14:54:34

谢谢啦,例子其实是没问题的,现在是项目里面报错,得慢慢找去了

还是很感谢您的热心,测试的例子也上传了[attach]8867[/attach]
作者: dforce    时间: 2017-2-23 15:37:49

Lara 发表于 2017-2-23 14:54
谢谢啦,例子其实是没问题的,现在是项目里面报错,得慢慢找去了

还是很感谢您的热心,测试的例子也上 ...

有很多的重复调用
boot.js是帮助引用miniui的,这个boot.js就相当于引用了jquery.js,miniui.js,miniui.css,icon.css
你这后面又有jquery的引用,还有多次的boot.js的引用,这就有点奇怪了
我只引用
<script src="scripts/boot.js" type="text/javascript"></script>
        <script src="scripts/jquery.ui.widget.js" type="text/javascript"></script>
      
        <script src="scripts/jquery.fileupload/jquery.iframe-transport.js" type="text/javascript"></script>
        <script src="scripts/jquery.fileupload/jquery.fileupload.js" type="text/javascript"></script>
这些文件未发现报错
作者: Lara    时间: 2017-2-23 15:50:41

天啦,真的是,我把<script src="~/Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>注释掉就好了,项目里面也不报错了,谢谢大神,赞




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2