Je voudrais créer une fonction capable de gérer JSON dans le format imbriqué suivant. Les clés changeront, c.-à-d. conditions - pourraient être n'importe quoi et la clé de sous-condition pourrait être n'importe quoi mais la structure reste la même.javascript/jquery en utilisant une variable pour référencer différentes parties d'un objet json/xml
Ma fonction est définie comme
populatePageEditorMenu: function (jsonPath, topLevel, childLevel){
et appelé par
populatePageEditorMenu("http://localhost/data/conditions.json", 'conditions', 'subcondition');
cela me permet de pointer vers différents bits de JSON avec des clés différentes avec la même structure mais je ne peux pas sembler obtenir la clé de sous-condition à configurer ma syntaxe n'est pas tout à fait raison.
avec ce qui suit JSON
{
"conditions": [
{
"condition": [
{
"name": "TOP",
"subcondition": [
{
"name": "CHILD1"
}
]
}
]
}
]
}
Je peux faire référence aux conditions de haut niveau en tant que tel à l'aide de crochets ..
$.getJSON(jsonPath,
function(data) {
$.each(data[topLevel], function(topentryIndex, entry) {
Cela fonctionne bien!
Le problème ne marche pas du paragraphe semblent fonctionner, j'ai eu avant cela en utilisant paramaterized a utilisé les ... Les crochets ne fonctionnent pas ici ...
$.each(this.subcondition, function(entryIndex, entry) { ....
J'ai posté une version plus complète sur le jsfiddle le JSON peut être vu dans la vue CSS.
Référence - http://jsfiddle.net/wmitchell/QRkxd/
Le code et JSON que vous avez posté ne vont pas du tout ensemble ... –
a essayé de l'effacer un peu .. montre l'appel de la fonction et la définition. Un post plus complet peut être trouvé sur le ref de jsfiddle – wmitchell
Votre jsFiddle n'est pas trop d'aide sans 'jsonPath' étant mis en place ... –