Hello,
Yeah, thats right, the code works but it's too heavy
You should concatenate one string with all option and then make a
append. A append inside the loop would break the perfomance:
> $.post('/path/to/json.php', {params: 'go here, if you need them'},
> function(data){
> // "data" contains that JSON object you described
>
> // Also, I'm assuming your select box looks something like this:
> // <select id="mySelectBox"></select>
> var select = $('#mySelectBox');
> var options;
> if (data.length) $.each(data, function(){
> options += '<option
> value="'+this.State.name+'">'+this.State.name+'</option>';
> })
> $(options).appendTo( select );
>
> }, 'json');
Reference:
http://www.learningjquery.com/2009/03/43439-reasons-to-use-append-correctly
Regards,
Alexandre Magno
Interface Developer
http://blog.alexandremagno.net
On Jun 26, 11:59 am, Eric Garside <[email protected]> wrote:
> Well, lets assume you're getting the JSON you described from the
> following ajax call:
>
> $.post('/path/to/json.php', {params: 'go here, if you need them'},
> function(data){
> // "data" contains that JSON object you described
>
> // Also, I'm assuming your select box looks something like this:
> // <select id="mySelectBox"></select>
> var select = $('#mySelectBox');
> if (data.length) $.each(data, function(){
> $( '<option value="' + this.State.name + '">' + this.State.name
> + '</option>').appendTo( select );
> })
>
> }, 'json');
>
> On Jun 26, 6:46 am, liaogz82 <[email protected]> wrote:
>
> > Hi all,
>
> > I have this JSON file that does the encoding from the states database.
> > I want to extract it out using jquery and populate the select drop
> > down box. the json file is being encoded in this way:
>
> > [
> > {"State":{"name":"AUSTRALIA CAPITAL TERRITORY"}},
> > {"State":{"name":"NEW SOUTH WALES"}},
> > {"State":{"name":"NORTHERN TERRITORY"}},
> > {"State":{"name":"QUEENSLAND"}},
> > {"State":{"name":"SOUTH AUSTRALIA"}},
> > {"State":{"name":"TASMANIA"}},
> > {"State":{"name":"VICTORIA"}},
> > {"State":{"name":"Western Australia"}}
> > ]
>
> > not very sure how to extract out the values. Please help me. Thanks!