J'ai utilisé le code Simon Whatley's pour le plugin autocomplete. Maintenant, j'ai besoin d'aide pour analyser une donnée jSON. Voici mon code:analyse json dans jquery autocomplete
$("#country").autocomplete("data/country.cfm",{
minChars:1,
delay:0,
autoFill:false,
matchSubset:false,
matchContains:1,
cacheLength:10,
selectOnly:1,
dataType: 'json',
extraParams: {
format: 'json'
},
parse: function(data) {
var parsed = [];
for (var i = 0; i < data.length; i++) {
parsed[parsed.length] = {
data: data[i],
value: data[i].NAME,
result: data[i].NAME
};
}
return parsed;
},
formatItem: function(item) {
return item.NAME;
}
});
Par exemple, je reçois cela comme ma chaîne JSON:
[{"name":"country1"},{"name":"country2"},{"name":"country3"}]
Ce que je veux obtenir comme résultats, bien sûr, sont les valeurs pays1, pays2, pays3. Cependant, ce que je reçois en ce moment dans la zone de texte lorsque je tape (par exemple je tape "cou") est "indéfini". Si je clique dessus, ce qui apparaît dans le champ text est la chaîne entière [{"name": "country1"}, {"name": "country2"}, {"name": "country3"}].
J'ai aussi essayé mais ceux-ci ne fonctionne toujours pas: jquery autocomplete, how to parse a json request with url info? jquery autocomplete with json response
Aide s'il vous plaît. Merci!
Salut Andrew! Merci pour la réponse. J'ai essayé votre suggestion, mais cela n'a pas fonctionné. C'est ce que je reçois. Quand je tape dans le champ de texte, j'obtiens "non défini" comme résultat de recherche. Quand je clique dessus, toute la chaîne json apparaît dans le champ. Quel pourrait être le problème? Merci. – danielle
Salut! J'ai découvert que le plugin autocomplete de Simon s'attend à ce que les résultats soient sur des lignes individuelles et non au format jSON. Voir http://stackoverflow.com/questions/5100047/problem-with-parsing-json-in-jquery-autocomplete Merci! – danielle