Недавно мой знакомый столкнулся с проблемой передачи через AJAX переменных, содержащих «&».
Проблема c амперсандом
Передаем пару переменных (var1 и var2) через AJAX методом POST или GET. Используем библиотеку jQuery.
$.ajax({ type: 'POST', url: 'some.php', data: 'var1=preved&var2=medved', success: onAjaxSuccess });
Проблемы начинаются, если в переменных встречаются амперсанды (символ &).
Например
data: 'var1=chip&dail&var2=medved'
Таким образом, амперсанды «ломают» массив параметров, т.к. & - разделитель параметров в URL.
Более того, данной проблеме подвержен не только jQuery, но и «голый» AJAX (без использования библиотек).
Решение проблемы
14.01.2009