1

次のように PHP で JSON オブジェクトを作成しています。

echo json_encode(array("results" => array(array("user" => $member['user']),array("company" => $member['company']))));

JavaScript では、次のようなものが得られます。

"{"results":[{"user":"David"},{"company":"something"}]}"

次に、この JSON を検証しようとしましたが、有効ではありませんが、最初と最後の二重引用符を削除すると、JSON が検証されます。

私は何を間違っていますか?これは、次のようになります。

{"results":[{"user":"David"},{"company":"something"}]}

編集:

私のAJAX呼び出しの一部:

success: function(response) 
        {
            for(var i=0;i<response.results.length;i++)
            {
              sessionStorage.setItem('user',response.results[i].user);
              sessionStorage.setItem('company',response.results[i].company);
            }
        }
4

3 に答える 3

0

どこか (ログか何かから?) から引用符付きの文字列をコピーし、別の場所で検証しようとしているようです。echo json_encode(..)正しいJson文字列を提供する必要があります!

于 2013-08-15T09:26:42.587 に答える
0
echo json_encode(

array(
  "results" => 
     array(
        array("user" => $member['user'], "company" => $member['company'] ),
        array("user" => $member['user2'], "company" => $member['company2'] )
       )
     )
 );
于 2013-08-15T09:23:57.910 に答える