コールバックでは、JSON 文字列ではなく、逆シリアルdata
化されたオブジェクトになります。したがって、それを に渡すときは、基本的にそれを呼び出して結果を渡します。が配列の場合、デフォルトで を行います。オブジェクトの場合は、が表示されます。html
toString
data
Array#join
toString
[object Object]
要素に何かが表示されているはずですが、ここでの主なポイントは、目的が のデータを操作することである場合、既にデコードされているということです。results
data
スクリプトによって返された実際の JSON テキストを確認したい場合は、jQueryに逆シリアル化しないように指示し、HTML エンティティまたは特殊文字が含まれていることを HTML にダンプするときに確認します。次のように、適切に処理されます。
$(document).ready(function() {
$.post('matchEngine.php',
function(data){
$('#results').text(data); // <== `text` instead of `html`
// makes sure HTML characters
// like < are shown correctly
alert("data gotten!");
}, 'text'); // <== data type 'text' instead of
// 'json' tells jQuery NOT to decode
// it for you
});