0

我知道它已经涵盖了关于能够使用 zclip 使用 ajax 复制和粘贴到剪贴板的各种主题,但我想知道我的问题是否与 jquery、firefox 和 ajax 请求更普遍......

$("#generate-report-to-clipboard").zclip({
            path: '/Content/ZeroClipboard.swf',
            copy: function () {
                var options = {
                    async: false, success: function (data) {
                        // now do ajax call for report results
                        $.ajax({
                            url: '<%= Url.Action("GenerateEmailToClipboard") %>',
                            type: 'POST',
                            async: false,
                            success: function (data, status) {
                                $("#copy-holder").text(data);
                            }
                        });
                    }
                };

                $("#report-definition-form").ajaxForm(options);
                $("#report-definition-form").submit();

                return $("#copy-holder").text();
            }, afterCopy: function () { alert('something'); }
        });

好的,所以我的想法是当我单击链接时,我会请求复制数据,并在成功时将该数据添加到剪贴板。

此方法在 IE 8(我知道很奇怪)和 Chrome 12 中运行良好,但在 Firefox 4 中运行良好。

我认为它可能与 AJAX 请求有关的原因是,当我删除 AJAX 调用并将 #copy-holder 设置为一个值时,它会毫无问题地复制到剪贴板。

请帮忙,我要疯了!

4

1 回答 1

0

我发现 Firefox 中 AJAX 调用的数量很奇怪。我有一个弹出窗口,允许用户复制,然后转到下一个对象,打开弹出窗口并复制。在 Chrome、IE 等中,AJAX 请求是单个的,因此可以返回结果,但在 Firefox 中,有大量的 AJAX 请求。用户单击的每个弹出窗口对应一个。

问题是实际的 jquery.jzclip.js 文件,第二个,第三个 .. 请求正在从这个文件传递回 AJAX 函数,就像你有的一样。如果您使用控制台(F12),您可以看到它正在发生。目前还没有解决方案,尝试对给出的 js 文件进行故障排除非常烦人。

于 2012-06-08T14:09:48.767 回答