Арабские символы ошибаются в скачанном Excel - PullRequest
0 голосов
/ 25 июня 2018

Я пытаюсь экспортировать данные, чтобы преуспеть в Javascript.Ниже приведен код, который я использовал:

var createAndExport = function(data){
            var table = "<table><thead><tr><td>";
            var head = Object.keys(data[0]);
            for(var i=0;i<head.length;i++){
                table += head[i]+"</td><td>";
            }
            table += "</td></tr></thead><tbody>";
            for(var i=0;i<data.length;i++){
                table += "<tr>";
                for(var j=0;j<head.length;j++){
                    table += "<td>"+data[i][head[j]]+"</td>";
                }
                table += "</tr>";
            }
            table += "</tbody></table>";
            var uri = 'data:application/vnd.ms-excel;charset=utf-8,'+ table;

            var downloadLink = document.createElement("a");
            downloadLink.href = uri;
            downloadLink.download = "data.xls";

            document.body.appendChild(downloadLink);
            downloadLink.click();
            document.body.removeChild(downloadLink);
        }

Этот код работает нормально и загружает данные в формате Excel.Но проблема заключается в данных, содержащих арабские слова, которые отображаются в виде некоторых других символов в загруженном Excel, как на рисунке.enter image description here

Как я могу исправить эту проблему арабских слов?

1 Ответ

0 голосов
/ 25 июня 2018

Информация о кодировке должна быть также в шаблоне HTML:

var createAndExport = function(data){
            var table = "<head><meta charset='UTF-8'></head><table><thead><tr><td>";
...

См. Скрипту: https://jsfiddle.net/3fohpL9u/2/

...