You weren't so wrong.

var myCategory = "cheese";
$.each(data[myCategory], function(i, item) {
              //do a ton of stuff
});

http://docs.jquery.com/Types#Array_Notation

On 11 Sep., 22:36, Brad <[EMAIL PROTECTED]> wrote:
> var myCategory;
>
> If (eating cheese)
>     myCategory = data.cheese;
> If (eating bread)
>     myCategory = data.bread;
> ...
> $.each(myCategory, function(i, item)
>             { do a ton of stuff
>     }
>
> Another option is to use eval(), but that command is evil. :)
>
> myType = "cheese";
> eval("myCategory = data." + myType + ";"); // untested
> $.each(myCategory, function(i, item)
>             { do a ton of stuff
>     }
>
> On Sep 11, 1:10 pm, cbandes <[EMAIL PROTECTED]> wrote:
>
> > Hi - I have a function which iterates through a json file in order to
> > build an FAQ page. Within the json are several different categories,
> > and I want to make a generic function that will return only the
> > appropriate items from the chosen category.
>
> > Currently it looks like this:
>
> >         $.getJSON("faq_json.js", function(data)
> >         {
> >           $.each(data.cheese, function(i, item)
> >             { do a ton of stuff
> >     }
>
> > But let's say I want to display stuff that isn't in data.cheese - like
> > the stuff from data.meat or data.bread - currently I would need to
> > hardcode those in.
>
> > What I had hoped to do was this:
>
> > var myCategory = "cheese";
> > $.each(data.myCategory, function(i, item)
> >             { do a ton of stuff
> >     }
>
> > But that doesn't work. I'm sure there's a simple fix, but I have no
> > idea where to look... (Yeah, I'm a n3wB ;) thanks for your patience!)
>
>

Reply via email to