2017-10-10 2 views
0

Je récupération de la liste de ajax, quand il devient le succès, je souhaite ajouter les valeurs de la liste à DROPDOWNLIST articles, donc je veux itérer le data jusqu'à ce que la dernière valeur, puis l'ajouter à DropDownListComment trouver la longueur des données de succès dans Jquery Ajax?

Voici mon code Qu'est-ce J'ai essayé

$.ajax({ 

    type: "POST", 
    contentType: "application/json;charset=utf-8", 
    url: "GPCreateCheque.aspx/getOpenRequestNo", 
    dataType: "json", 
    success: function (data) { 
     alert(data.length); 

     for (var i = 0; i<data.length; i++) { 
      $(".tbDDLReqNo").append(new Option(data.d[i], data.d[i])); 
     } 
    }, 
    error: function (result) { 
     alert("Error"); 
    } 

}) 

En zone d'alerte, il montre undefined

MISE À JOUR

Je reviens le list<string> de [webmethod]

+0

Qu'est-ce que vous 'data' ressembler? Essayez 'console.log (données)' – abhishekkannojia

+0

fournir la structure de 'data' –

+0

@abhishekkannojia il a une liste' '

Répondre

0

utilisation data.d.length

alert(data.d.length); 

for (var i = 0; i<data.d.length; i++) { 
    $(".tbDDLReqNo").append(new Option(data.d[i], data.d[i])); 
} 
+0

qui a donné des votes négatifs? .... Je vais accepter votre réponse après 15 min –

+0

@mohamedfaiz merci frère. – krishnar

0

Vous devez faire data = JSON.parse(data); avant de traiter vos données comme un tableau. C'est juste une chaîne jusqu'à ce point.

Mise à jour: si vos données ne sont pas le tableau lui-même, mais plutôt un objet qui contient un tableau nommé d, vous devez travailler avec cela. Cela dépend de votre structure de données.

+0

champ 'data' est pour quel type de données que nous allons envoyer au serveur correct ?, Si je ne me trompe pas, quand j'alerte' data.d [0] ', il imprime la première valeur du tableau –

+0

je don Je ne sais pas exactement ce que vous recevez via Ajax. Habituellement, vous obtenez une chaîne au format JSON. Cette chaîne doit être analysée pour devenir un objet Javascript. Si vos données contiennent un tableau au format JSON, essayez ceci: * alert (JSON.parse (data) .length); * Cela devrait vous donner la longueur de votre tableau. – Robert

0

Vérifiez la réponse de l'onglet Réseau dans la console développeur Google Chrome ou un outil similaire. Peut être le code de réponse est 200 mais les données de réponse sont manquantes.

D'autre part, vous voulez itarete data dans la boucle, mais vous essayez d'ajouter data.d[i]. Si vous voulez ajouter data.d[i] vous devez itarete data.d dans la boucle.