0

jquery オートコンプリートのデータを取得するために ajax 関数を使用していますが、json 応答を解析していないようで、その理由がわかりません。

別のjson応答である機能しているコンソールと、機能していない別のコンソールのconsole.logを調べました。クロムコンソールで、以下を確認できます。最初のものは機能していませんが、2 つ目は機能しています。

["17","17","16","20","19","18","23","18","20","18","23","23"]
["25", "24", "25", "24", "24", "23", "21", "23", "22", "21", "22", "22"]

2 番目の数字は赤い色になっているのがわかりますが、その理由はわかりません。

このJSONを解析していない理由を誰かが知ることができますか?

4

1 に答える 1

0

2 番目のものには、各コンマの後にスペース (またはそのように表示される他の文字) があります。これがjson_encode()呼び出しの出力方法である場合は、追加の測定を実行して、AJAX 関数に返す前にそれらのスペースが存在しないことを確認できます。

$encoded_text = str_replace(" ","",$encoded_text);

通常はスペースを含むデータがある場合は、使用しないでください。それが機能しない原因かどうかはわかりませんが、それがあなたが私たちに示した文字列の唯一の違いです.

JSONLintを使用して JSON を無料で検証することもできます。

于 2012-04-09T12:56:24.273 に答える