0

嗨,明天圣诞节快乐。

我在 ASP.NET 3.5 页面上使用带有 jquery ui 选项卡的 uploadify。一切都适用于铬;当我交换标签时,uploadiify 按钮会闪烁,但在标签滑入时会出现。

使用 firefox (17.0.1) 选项卡滑入并显示上传按钮,它会闪烁并且不再显示。我可以通过从 asp:button 回发部分页面来强制它显示。如果我用 jquery 模拟 asp:button 单击它不会加载 uploadify 按钮。

我认为这可能是某种时间问题,所以我将 uploadify() 函数放在了 settimeout() 中,但这并没有解决它。我认为这是因为如果我在选项卡滑入后发出警报并且uploadify 是“绑定”的,则会显示uploadify 按钮。

我已经尝试了 uploadify 演示页面,没关系,所以它不是 Firefox Flash 版本的问题。

有任何想法吗?

这是我的 uploadify 'binding' 功能 - 它适用于 chrome,所以我认为所有路径都很好。onSWFReady 试图解决这个问题 - 不好。

    function InitialiseNewUploadifyControl() {

        var prefix = "Attachment_";
        var auth = "<% = Request.Cookies[FormsAuthentication.FormsCookieName] == null ? string.Empty : Request.Cookies[FormsAuthentication.FormsCookieName].Value %>";
        var ASPSESSID = "<%= Session.SessionID %>";
        var jobId = $(".job-Id").text();

        if ($('#fileInputNewUploader').length < 1) {
            console.log("fileInputNewUploader : " + $('#fileInputNewUploader').length.toString());
            var _log = $('#fileInputNew').uploadify({
                'uploader': '/Scripts/Uploadify/uploadify.swf',
                'script': 'Handlers/Upload.ashx',
                'scriptData': { 'prefix': prefix, 'ASPSESSID': ASPSESSID, 'AUTHID': auth, 'JobId': jobId,
                    "UploadImmediate": false
                },
                'cancelImg': 'Scripts/Uploadify/cancel.png',
                'auto': true,
                'multi': true,
                'fileDesc': 'All Files',
                'fileExt': '*.*',
                'queueSizeLimit': 10,
                'sizeLimit': 4000000,
                'buttonText': 'Upload Files',
                'folder': '/Uploads',
                'removeCompleted': false,
                'onComplete': function (event, ID, fileObj, response, data) {
                    $("<%= ui_lblHiddenResizeControl.ClientID %>").text("false");
                    if (response == "0") {
                        alert('Sorry, the file type that was just uploaded is not allowed.');
                        jQuery('#fileInputNew').uploadifyCancel(ID);
                    } else {
                        $("#<%= ui_lblHiddenResizeControl.ClientID %>").text("true");
                        //$(".hidden-row-click").click();
                    }
                    return false;
                }
                /*
                , 'onSWFReady': function () {
                    //$("#fileInputNewUploader").parent().css({ "visability": "visible", "background-color": "Gray" });
                    HideTopLoader();
                    console.log("onSWFReady_fileInputNewUploader : " + $('#fileInputNewUploader').length.toString());
                    if ($('.FFFix-hidden-button-click').val() === "unclicked") {
                        $('.FFFix-hidden-button-click').click();
                        console.log("onSWFReady_fileInputNewUploader click");
                    }
                }
                */
            });
            console.log('%o', _log);
        }
    }
4

2 回答 2

1

我在使用 FireFox 时遇到了同样的问题,您需要为 FireFox 更新/安装 Adob​​e Flash 播放器

于 2012-12-26T11:10:09.473 回答
0

演示工作正常,因此 Flash 播放器正常。我将代码绑定到 jquery ui Tabs 函数/方法;检查选择了哪个选项卡并绑定,如果它是我之后的 1,这个固定的东西.. 不需要 setTimeout。

于 2013-01-02T09:01:38.467 回答