JavaScript

можно ли ссылаться на близлежащий файл, а не на сервер

{
var variant = document.querySelector('.select').selectedIndex;
document.querySelector(".checkbox-wrapper").style.display = "none";
console.log(variant);
var varfile;
switch(variant) {
case 0:
varfile = 'var1.json';
break;
case 1:
varfile = 'var2.json';
break;
case 2:
varfile = 'var3.json';
break;
case 3:
varfile = 'var4.json';
break;
case 4:
varfile = 'var5.json';
break;
case 5:
varfile = 'all.json';
break;
}
Можно косую черту только иногда надо ставить с точками ./имя файла

Абсолютные и относительные ссылки
Также ссылки бывают абсолютными и относительными. Абсолютная ссылка — это обычная ссылка вида:

< a href="http://www.site.ru/">Главная страница< /a>
А вот с относительными ссылками немного посложнее. В таких ссылках адрес указывается либо относительно корневой папки сайта (той, в которой лежит главная страница), либо относительно исходной страницы. Такие ссылки нужны, например, в том случае, если сайт лежит на домашнем компьютере. Или это не сайт, а страница-указатель на другие документы.

Разберём сначала создание ссылки относительно корневой папки сайта.

Допустим нам нужно сослаться на страницу klienty.html, которая лежит в одной папке с главной страницей сайта. Тогда код относительной ссылки примет вид:

< a href="/klienty.html">Клиенты< /a>
А теперь предположим, что в одной папке с главной страницей лежит папка zakazy и уже в ней лежит страница klienty.html Тогда код относительной ссылки станет таким:

< a href="/zakazy/klienty.html">Клиенты< /a>
Т. е. при формировании ссылки относительно корневой папки сайта мы опускаем начальную часть адреса http://www.site.ru и оставляем всё остальное. Использование слеша «/» в начале обязательно!

Теперь рассмотрим создание гиперссылок относительно исходной страницы. Допустим, у нас есть страница price.html (исходная страница) и с неё нужно сослаться на страницу klienty.html Тут бывают следующие типовые варианты:

1. Страницы price.html и klienty.html находятся в одной папке.

Тогда код ссылки будет таким:

< a href="klienty.html">Клиенты< /a>

2. Страница klienty.html и папка zakazy находятся в корневой папке сайта, страница price.html лежит в папке zakazy (т. е. страница klienty.html относительно исходной страницы price.html лежит на один уровень выше).

Код станет таким:

< a href="../klienty.html">Клиенты< /a>
Две точки показывают, что нужно выйти из текущей папки на уровень выше.

3. Страница klienty.html и папка zakazy находятся в корневой папке сайта, папка mebel лежит в папке zakazy, страница price.html лежит в папке mebel (т. е. страница klienty.html относительно исходной страницы price.html лежит на два уровня выше).

Код ссылки примет вид:

< a href="../../klienty.html">Клиенты< /a>
Т. е. каждый уровень обозначается двумя точками и слешем «/».

4. Страница price.html (исходная страница) и папка zakazy находятся в корневой папке сайта, страница klienty.html лежит в папке zakazy (т. е. теперь страница klienty.html относительно исходной страницы price.html лежит на один уровень ниже).

Теперь код ссылки будет таким:

< a href="zakazy/klienty.html">Клиенты< /a>
В этом случае точки и слеши не ставятся.

5. Страница price.html (исходная страница) и папка zakazy находятся в корневой папке сайта, папка mebel лежит в папке zakazy, страница klienty.html лежит в папке mebel (т. е. теперь страница klienty.html относительно исходной страницы price.html лежит на два уровня ниже).

Код ссылки такой:

< a href="zakazy/mebel/klienty.html">Клиенты< /a>

6. В корневой папке сайта лежат две папки: zakazy и oplata. Страница klienty.html лежит в папке zakazy, исходная страница price.html лежит в папке oplata (т. е. обе страницы лежат в разных папках на уровень ниже от корневой папки сайта).

Код ссылки станет следующим:

< a href="../zakazy/klienty.html">Клиенты< /a>
По аналогии создаются относительные ссылки и в том случае, если страницы лежат на разных уровнях относительно корневой папки. Будет меняться лишь количество указателей уровня (две точки и слеш) и адрес страницы, на которую ставится ссылка.

Дмитрий Пучнин
Дмитрий Пучнин
69 493
Лучший ответ
Если речь о файлах на компе где выполняется скрипт, то ссылаться конечно можно... А вот ЧТЕНИЕ локальных файлов, возможно только в расширении браузера, или в Node.
В браузерном JavaScript (на странице) - читать локальные нельзя, по соображениям безопасности.