Member 14137457 Ответов: 1

Нужно знать, как экспортировать одну ячейку в excel с помощью javascript на HTML-страницу


Я загрузил лист excel на сервер и теперь пытаюсь заставить веб-страницу читать определенные ячейки, которые будут помещены на html-страницу. Как я могу получить отдельные ячейки, отображаемые на веб-странице без Iframing, но с использованием javascript?


спасибо
Майк

Что я уже пробовал:

<!doctype html>


<meta charset="utf-8">
<title>безымянный документ











функция JavaScript




функция my_function()
{
var Excel;
Excel = новый ActiveXObject("Excel.Приложение");
В Excel.Видна = ложь;
программа Excel.Рабочая тетрадь.Открыть("C:/desktop/test_rates.xls").Активный лист.Ячейки(l,i).значение;
//Excel.Выход()
вернуть;
}

//где l-количество строк, а i-столбцов...
var i=1;
var l=1;
делать
{
моя функция()
документ.писать("значение" +а+"\т");я++;
Если (а=="");
{л++;
i=1;
документ.записать("\п");
}
}
а(а=="");

MadMyche

Вы же понимаете, что большинство браузеров не поддерживают ActiveX, верно?

Member 14137457

Я не знал об этом, так как я новичок в Javascript.

MadMyche

ActiveX-это технология MS, которая появилась в 90-х годах. Он был полностью поддержан только в IE.
MS Edge его не поддерживает.
В свое время Chrome и Firefox имели ограниченную поддержку, но неизвестно, есть ли она у них до сих пор.

Member 14137457

Что вы рекомендуете сделать, чтобы я мог разобрать одну ячейку на веб-странице с листа excel? И excel, и веб-страница будут находиться в одном домене.

Richard Deeming

ActiveX в приложениях, отличных от Internet Explorer - Википедия[^]

Браузер Firefox:
Плагин в Mozilla не обновлялся с 2005 года, и работает только в Firefox 1.5. Есть дополнения, которые не обновлялись в течение 11 лет, который работает только в 1.5—3.5. И есть проект на GitHub, который не обновлялся в течение пяти лет, и почти наверняка не будет работать в последней версии, даже если вы смогли убедить пользователей, чтобы установить его.

Хром:
Единственным вариантом является" IETab", который запускает Internet Explorer как вкладку в окне Chrome. Он все еще поддерживается, но предлагает "покупки в приложении", и это все еще клоун. Опять же, вам придется убедить пользователей установить его.


Даже в Internet Explorer, Excel.Application Элемент управления ActiveX не помечен как "безопасный для сценариев". Вам придется убедить пользователей изменить свои настройки безопасности и безоговорочно доверять вашему сайту, чтобы он не делал ничего плохого с добавленными привилегиями.

1 Ответов

Рейтинг:
0

Dave Kreskowiak

Если файл Excel находится на сервере, код сервера должен прочитать лист Excel. Javascript-код на клиенте не сможет добраться до файла.

Сказав это, ваш код Javascript должен делать что-то совершенно другое. Вместо того чтобы пытаться использовать Excel, он просто делает AJAX-вызов на сервер для получения нужных данных, передавая любые данные, которые вам нужны, чтобы сообщить серверу, какую ячейку нужно вернуть. Как только вызов возвращается, вы получаете данные и отображаете значение в любом HTML-держателе места, который вы хотите.

Google для "Javascript ajax call" для клиентской стороны. Для серверной части все зависит от того, какое веб-приложение вы пишете для этого.