Witam.

Przesyłając za pomocą Ajaxa (jQuery) dane w postaci JSON nie zamieniają encji na docelowy znak, tylko powodują wyświetlanie się encji.

  1. <?php
  2.   echo json_encode  (array('message' => 'Lorem ipsum dolor sit amet &nbsp;&nbsp;&reg;'));
  3. ?>

  1. <div></div>
  2. <script type="text/javascript">
  3. //<![CDATA[
  4. $.getJSON('pobierz-dane.php', function(data) {
  5. $('div').html(data['message']);
  6. });
  7. //]]>


Powyższe skrypt zamiast wyświetlić dwie twarde spacje oraz znak ®, wyświetla encje &nbsp;&nbsp;&reg;. Dzieje się to tylko raczej w JSON. Bo przesyłając html z pomocą metody $.get() ten problem nie występuje.

Problem rozwiązany bo używałem .text() zamiast .html() smile.gif