Kiedy nazywają ten kod:nie można uzyskać dostępu do właściwości obiektów w jQuery AJAX wywołania
console.log(data);
console.log(data.email);
uzyskać ten wynik:
{"userName":"2","email":"2","firstName":"2","lastName":"2","isAdmin":"0","isEnabled":"1"} index.php:162
undefined
Pierwsze console.log(data);
wyjść poprawnie. Następnie chcę uzyskać dostęp do właściwości email
obiektu data
, a do tego używam console.log(data.email);
. Jednak, jak widać powyżej, jest napisane, że jest "nieokreślony".
Dlaczego nie mogę uzyskać dostępu do tej właściwości (lub jakichkolwiek właściwości)? Uwaga: Próbowałem też data['email']
, który również nie działał.
Można to również naprawić, informując jquery, że serwer jest zwracając JSON. 'dataType:" json "' lub ustawienie typu zawartości odpowiedzi serwera na '" application/json "' –
Dzięki, pomyślałem, że to "contentType", więc nie działało! Bardziej podoba mi się twoje rozwiązanie. – user1477388
Powinieneś użyć '$ .parseJSON' zamiast' JSON.parse() ', ponieważ jquery obsługuje je w trybie różnych przeglądarek. – Yang