計算機 API は有効な JSON を返しません。ラベルは引用符で囲まれていないため、直接解析することはできません。できる唯一のことは、jQuery に JSON を解析させる前に、ラベルに引用符を手動で追加することです。これで有効になります。
{lhs: "1 British pound",rhs: "1.5637 U.S. dollars",error: "",icc: true}
^ no quotes
以下は、各ラベルをそれ自体に置き換えて引用符を追加する、簡単で汚いソリューションです。各ラベルがハードコードされているため、これはあまり堅牢ではありませんが、正しいアイデアが得られるはずです。
var data = '{lhs: "1 British pound",rhs: "1.5637 U.S. dollars",error: "",icc: true}';
data = data.replace('lhs:', '"lhs":');
data = data.replace('rhs:', '"rhs":');
data = data.replace('error:', '"error":');
data = data.replace('icc:', '"icc":');
data = JSON.parse(data);
for(i in data) {
content = data[i];
$("#data-list").append(content.text + "<hr />");
}
同じオリジン ポリシーを回避するには、同じドメインのサーバー サイド スクリプトを介して API リクエストをプロキシします。
jQuery は JSONP をサポートしていますが、問題は、jQuery が JSON を変更する前に JSON を解析しようとすることです。