Никак не могу понять для чего используются #
или ##
в MVC проекте. Нажимаю кнопку и получаю url вида http://localhost:55555/example/exm/List##
Ссылка вида http://localhost:55555/example/exm/List##
состоит из двух частей:
Адрес, куда надо выполнить переход. Если совпадает с текущей страницей, никакого перехода не выполняется.
В данном случае это http://localhost:55555/example/exm/List
.
Якорь, меченое место на странице, куда производится отмотка после перехода.
Якорем является всё после первого символа решётки; в данном случае это второй символ #
. Значит, должна произойти отмотка до <a name="#"></a>
, либо <div id="#">...</div>
.
Если при нажатии на ссылку происходит появление всплывающего окна с формой, значит нажатие на данную ссылку перехватывается JavaScript-обработчиком события onclick
. Тогда адрес ссылки не имеет никакого значения; он срабатывает только при выключенном JavaScript и, должно быть, ведёт на запасную форму на отдельной странице.
Обычно при разработке в ссылках делают заглушки (в href выставляют значение #)
Если интересно, то вот в кратком изложении общая схема URI (Universal Resource Identifier) (URL (Uniform Resource Locators)).
/*
https://ru.wikipedia.org/wiki/URI
RFC 3986
URI = [ схема ":" ] иерархическая-часть [ "?" запрос ] [ "#" фрагмент ]
^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?
12 3 4 5 6 7 8 9
// ? Ноль или одно
// * Ноль или более
// + Одно или более
группа 2 — схема,
группа 4 — источник,
группа 5 — путь,
группа 7 — запрос,
группа 9 — фрагмент.
URL:
<схема>://<логин>:<пароль>@<хост>:<порт>/<URL‐путь>?<параметры>#<якорь>
https://en.wikipedia.org/wiki/Uniform_Resource_Identifier -
- A generic URI is of the form:
[scheme:][//[user:password@]host[:port]][/]path[?query][#fragment]
The following figure displays two example URIs and their component parts.
hierarchical part
┌───────────────────┴─────────────────────┐
authority path
┌───────────────┴───────────────┐┌───┴────┐
abc://username:password@example.com:123/path/data?key=value#fragid1
└┬┘ └───────┬───────┘ └────┬────┘ └┬┘ └───┬───┘ └──┬──┘
scheme user information host port query fragment
urn:example:mammal:monotreme:echidna
└┬┘ └──────────────┬───────────────┘
scheme path
*/
Как следует из нее, интересующий вас #
это содержимое части URI, называемой фрагмент (или якорь в терминологии URL).
На практике URL и URI часто взаимозаменяемые термины. Хотя, разница между ними есть (цитата отсюда)
Термин "унифицированный указатель информационных ресурсов" (URL) относится к подмножеству URI, которые, помимо идентификации ресурса, указывают способ его нахождения путем описания основных механизмов доступа к нему (т.е. его "положение" в сети).
Как именно интерпретируется фрагмент, зависит от исполнителя URI/URL. В принципе его можно рассматривать как еще один не структурированный аргумент (остальные аргументы передаются в части URI, называемой запрос)
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Здравствуйте, задание: Написать функцию, которая выводит список файлов в заданной директории, которые содержат искомое словоДиректория...