Grey_Wolf, JSON nav nekāda sakara ar datu eskeipošanu. :)
base64 gan, un tas ir iebūvēts jau no 4. versijas vismaz.
Bet vispār ar AJAX postējot datus, šādām problēmām parasti nevajadzētu būt (kaut gan ? un & tiešam ir tādi īpaši simboli, kas varētu sagādāt problēmas).
IM24LV, tev šī rindiņa točna vajadzīga ?
htmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
Vari arī pamēģināt pirms datu nosūtīšanas escape()ot tos (http://www.w3schools.com/jsref/jsref_escape.asp).