Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Sergey M. 07.07.2005 13:29
она не декодирует %uHHHH, только urlencoded-данные в UTF-8. Исправил описание, чтобы не вводить в заблуждение.Вообще говоря, в последний версиях JavaScript имеется функция encodeURIComponent(), умеющая кодировать данные в обход Unicode. Однако она не поддерживается, например, в Internet Explorer 5.0, так что из соображения кроссбраузерности нам не подходит.ещё интересные костыли, только для windows-1251, но можно дополнить:
function hex_escape (str) {
str = escape(str);
str = str.replace(/%u041/g, '%C');
str = str.replace(/%u042/g, '%D');
str = str.replace(/%u043/g, '%E');
str = str.replace(/%u044/g, '%F');
str = str.replace(/%u0401/g, '%A8');
str = str.replace(/%u0451/g, '%B8');
str = str.replace(/\+/g, '%20');
return str;
}