2014-01-29 5 views
0

Я создаю динамический JavaScript с помощью некоторого веб-сервиса.Получение неправильного формата '"' вместо обычных котировок ("")

Я получаю этот результат:

[{"values": [{"count": 1, "text": "Yes"}, {"count": 0, "text": "No"}], "key": "Welcome?"}]; 

Что я хочу:

[{"values": [{"count": 1, "text": "Yes"}, {"count": 0, "text": "No"}], "key": "Welcome?"}]; 

В настоящее время я сумел это с .replace(/"/g,'"')

Но я хочу более правильное решение, если это возможно.

Благодаря

+1

Как вы извлекая ответ, какой формат? Похоже, плохо разбирается JSON ... – elclanrs

ответ

0

Похоже, вы используете html_entities на вашем JSON.

Что я делаю, это наращивание и массив, а затем json_encode.

<?php 
    $data = array(
     "values" => array(
      array("count" => 1, "text" => "Yes"), 
      array("count" => 0, "text" => "No"), 
     ), 
     "key" => "Welcome?" 
    ); 

    $json_data = json_encode($data); 

получить точно такой же, как и в JSON ваш вопрос просто обернуть массив данных в другой массив:

<?php 
    $data = array(
     array(
      "values" => array(
       array("count" => 1, "text" => "Yes"), 
       array("count" => 0, "text" => "No"), 
      ), 
      "key" => "Welcome?" 
     ) 
    ); 

    $json_data = json_encode($data); 
+0

Я использую простой JavaScript. И данные, поступающие из веб-служб. –

+0

Извините, я предположил, что PHP, потому что меня укусили цитаты ... возможно, посмотрите: http://stackoverflow.com/questions/5957546/javascript-regex-replacing-quot – NiGhTHawK

Смежные вопросы