tableToExcel jQuery jette étrange erreur dans IE

Je suis l'aide d'une fonction jQuery pour exporter ma table HTML pour Excel. C'est une fonction que j'ai vu utilisé dans beaucoup d'autres endroits, et il fonctionne très bien pour moi dans Chrome:

var tableToExcel = (function() {
            var uri = 'data:application/vnd.ms-excel;base64,'
, template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body><table>{table}</table></body></html>'
, base64 = function(s) { return window.btoa(unescape(encodeURIComponent(s))) }
, format = function(s, c) { return s.replace(/{(\w+)}/g, function(m, p) { return c[p]; }) }
            return function(table, name) {
                if (!table.nodeType) table = document.getElementById(table)
                var ctx = { worksheet: name || 'Worksheet', table: table.innerHTML }
                window.location.href = uri + base64(format(template, ctx))
            }
        })()

Toutefois, dans IE 10, cette ligne: "de la fenêtre.emplacement.href = uri + base64(format(modèle, ctx))" - est en train de jeter l'erreur: "SCRIPT122: La zone de données passée à un appel système est trop petit."

J'ai fait un peu de recherche et il semble que IE n'est pas capable de gérer la longueur de l'URI pour une raison quelconque. Existe-il des solutions?

OriginalL'auteur JMax2012 | 2013-09-04