После использования decodeURI пробелы заменяются на знаки плюс

17.04.2012 12:49:29

После использования decodeURI пробелы заменяются на знаки плюс.

При подгруздке данных на страницу использовал Ajax. На стороне сервера пропустил параметры через urlencode, а в самом скрипте страницы соответственно через decodeURI и возникла проблема:
Все знаки пробелов заменились на значки "плюс".
Я эту проблему решил заменой знаков + на пробелы на стороне клиента:

decodeURI(return_data).replace(/\+/g, " ")

У  способа есть минус, он заменяет ВСЕ + на пробелы. Т.е. если в полученном тексе должен был быть знак плюс, то он пропадет.

Позже, как будет время, допишу полное решение этой проблемы, а пока могу посоветовать экранировать +  на стороне сервера.


Категории: JavaScript
Яндекс.Метрика