ne fonctionnent pas de données.longueur lorsque les données renvoyées par ajax

Que j'essaie d'obtenir certaines données dans json type avec l'ajax en jQuery, j'ai donc écrit ce code :

$.ajax({
    url: link.attr('href'),
    type: 'post',
    data: 'post=true',
    dataType: 'json',
    success: function(data){
        if (data.length > 0) {
            ldLayer.fadeOut('slow');
        }else{
            alert('no data');
        }
    }
});

Mais quand le data est null la if sera vrai et ldLayer.fadeOut('slow'); fonctionne !

Mise à JOUR:
Le console.log(data) résultat est : [null]

Si les données sont null, il doit échouer sur l'obtention de data.length. Êtes-vous sûr que les données sont null? N'est-il pas de chaîne 'null'? Dans ce cas, il passe correctement et cela a du sens.
Basé sur votre montage, data est un array avec un seul null membre, de sorte que son length propriété est 1. length ne peut être égal à 0 si le tableau est vide -- ce tableau n'est pas vide, car il est un membre. [null] est différente de [].
J'ai mis à jour ma question, j'ai écrit le console.log résultat. J'ai essayer le data == 'null' et data == null trop avant, mais ne fonctionne pas
essayez changinging le type de données sur la demande de texte et de la console.la journalisation des données dans le succès de rappel... cela devrait vous donner quelques indices sur l'endroit où les choses sont en train de chuter.
Merci, donc, comment puis-je vérifier dans ce mode ?

OriginalL'auteur MajAfy | 2013-05-28