GetNearbyUsers
ユーザーのリストをJsonResultとして返すコントローラーメソッドがあります。次の ajax 関数を使用してメソッドを呼び出そうとしています:
function getNearbyUsers(interest) {
$.ajax(
{
type: "POST",
url: "/Interest/GetNearbyUsers",
data: { "interest": interest},
success:
function (result) {
console.log(result);
for (var item in result) {
console.log(item.username);
}
},
error: function (req, status, error) {
window.alert("Error!");
}
});
}
現時点では、コンソールにユーザー名を表示して、それが機能していることを確認しようとしています。コントローラー メソッドは正常に動作し、正しい JsonResult を返します。実際、「結果」を印刷すると、次のようになります。
[Object, Object, Object, Object, Object]
0: Object
Id: Object
Interests: Array[3]
LastUpdated: "/Date(1367419763994)/"
Location: Array[2]
Password: "password"
UserName: "user1"
__proto__: Object
1: Object
2: Object
3: Object
4: Object
したがって、Ajax 呼び出しは機能しており、適切なデータを取得しているようです。ただし、item.username などのリスト内のオブジェクトにアクセスしようとすると、ユーザー名が未定義であることがわかります。console.log(item) を実行すると、インデックスが出力されます。また、「結果」で JSON.parse を使用しようとしましたが、「予期しないトークン o」エラーが発生します。何か案は?