Недавно мой знакомый столкнулся с проблемой передачи через 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 (без использования библиотек).
Решение проблемы