J'ai un problème avec jQuery UI autocomplete que j'essaye de résoudre avec beaucoup de recherche et seulement résolu partiellement. J'ai réussi à le faire fonctionner du tout avec ce code:jQuery UI autocomplete dans AJAX/JSON
$("#term").autocomplete({
source: function (request, response) {
$.ajax({
url: "https://wger.de/api/v2/exercise/?format=json",
type: "GET",
data: { name: request.term },
dataType: "json",
success: function(data) {
response($.map(data, function(item) {
return {
label: item,
value: item
}
}));
}
});
}
});
Je travaille avec l'API open source dans JSON, voici un exemple:
{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"id": 436,
"license_author": "Andrew Carothers",
"status": "1",
"description": "<p>1 Minute for each exercise</p>\n<ol>\n<li>Hold feet 6 inches off ground</li>\n<li>Crunches</li>\n<li>Side Crunches (L)</li>\n<li>Side Crunches (R)</li>\n<li>Heel Touches</li>\n<li>Plank Crunch</li>\n<li>Scissor Kicks</li>\n<li>Swim Kicks</li>\n<li>V Crunches</li>\n<li>Hold feet 6 in off ground</li>\n</ol>\n<p>Exercises can be substituted to vary workout</p>",
"name": "10 Min Abs",
"name_original": "10 Min Abs",
"creation_date": "2016-12-09",
"uuid": "3c5f6e1c-cb22-4a9f-a13e-d14afeb29175",
"license": 2,
"category": 10,
"language": 2,
"muscles": [],
"muscles_secondary": [],
"equipment": []
}
]
}
Je veux obtenir des suggestions de saisie semi-automatique avec des lettres de "name" dans JSON, mais j'ai un tableau JSON entier, même avec des objets inexistants. J'ai déjà essayé item.results[0].name
, mais tout ce que j'ai c'est TypeError: item.results is undefined
. Comment modifier $.ajax
pour obtenir la valeur "nom" de l'objet JSON dans les suggestions de saisie semi-automatique?
Merci pour toute aide.
Les erreurs que vous obtenez suggère que les données que vous nous avez donné objet est pas ce que vous recevez. Nous ne pouvons pas vous aider sans une représentation réelle des données que vous recevez. –
@KevinB Eh bien, je vérifie le Moniteur de réseau de Firefox à chaque fois et je reçois une bonne URL, de type json, par exemple https://wger.de/api/v2/exercise/?format=json&name=10+Min+Abs – oskarwilczynski
data.results.map (... –