При использовании хрома / хрома скобки в хеш-адресе URL отображаются как% 5B независимо от% 5D. Использование Firefox [что угодно]. Есть ли способ это исправить? - PullRequest
1 голос
/ 15 ноября 2010

Я использую jQuery 1.4.3 и плагин BBQ для обработки истории и хэша.

Когда я обновляю хеш этой строкой "Реклама = рестораны и поиск [область] = 1 & поиск [main_food] = 2" URL-бар показывает "Реклама = рестораны и поиск% 5Bprovince% 5D = 1 & поиск% 5Bmain_food% 5D = 2"

Гадкий.

Есть ли способ показать это красиво, как это делает Firefox?

Спасибо

1 Ответ

4 голосов
/ 15 ноября 2010

Символы [ и ] не должны появляться буквально во фрагменте URI .Вот соответствующий ABNF для URI (RFC 3986) :

fragment      = *( pchar / "/" / "?" )
pchar         = unreserved / pct-encoded / sub-delims / ":" / "@"
unreserved    = ALPHA / DIGIT / "-" / "." / "_" / "~"
pct-encoded   = "%" HEXDIG HEXDIG
sub-delims    = "!" / "$" / "&" / "'" / "(" / ")"
              / "*" / "+" / "," / ";" / "="

Любой символ, который не указан в ней, должен быть закодирован с использованием процентного кодирования.Таким образом, поведение Chrome является правильным.Но я думаю, что Firefox просто отображает символы, которые представлены %5B и %5D.И это зависит от браузера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...