Javascript: encodeURIComponent, escape, urlencode

Июнь 19, 2009

Проблема интернациональных символов, передаваемых через GET остро встала перед нами — по какой-то причине Internet Explorer как-то криво передает, например, французские символы — попробуйте, открыть в нем следующий урл, использующий GET: http://www.google.ru/search?q=Français — необходимо именно скопировать этот текст в поле ввода адреса, и проследить чтобы символ ç не заменился на процентный эквивалент. Если не установлен французский язык, то ИЕ бодро заменят символ ç на с, кстати опера тупо заменяет на ?, а вот ФФ и Хром нормально воспринимают такие символы и правильно передают в данном случаи Гуглу.

У нас передаются асинхронные запросы ява-скриптом на сервер, соответственно необходимо подготовить правильный урл для запросов. Для этого есть две функции в ява-скрипте — escape и encodeURIComponent. Но нам подходит только encodeURIComponent, так как именно она умеет грамотно обрабатывать уникодовые строки, а escape для аски.

Надеюсь, сэкономил ваше время на поиски решения ;)

6 Comments to "Javascript: encodeURIComponent, escape, urlencode"

  1. Кулинар wrote:

    У вас проблема с версткой, кажется: в Opera 9.27 все блоки разъезжаются :(

  2. Inet-Bazar wrote:

    мило ждем еще…

  3. clockstyles.ru wrote:

    Пускай сменит браузер.

  4. http://evak24.ru wrote:

    Похоже это бот.

  5. clockstyles.ru wrote:

    Этот комент встречался уже где-то.

  6. Роман Иванов wrote:

    Мне нужна обратная функция javascript — decodeURIComponent. Респект за мысль :-)

 
Powered by Wordpress and MySQL. Theme by Shlomi Noach, openark.org