It needs a root element, that's what I just ran into an issue with
(I'm trying something very similar).

However, for some reason IE returns null when you try to get the
information inside of the tag, but Firefox (and Chrome and Safari)
return the correct information.

Have you seen that before?

On Dec 9, 12:47 pm, Michel Belleville <michel.bellevi...@gmail.com>
wrote:
> Are you returning precisely this :
> <div id="top">...</div>
> <div id="middle">...</div>
> <div id="bottom">...</div>
>
> Or is there a wrapper around these divs like :
>
> <html>
> <body>
> <div id="top">...</div>
> <div id="middle">...</div>
> <div id="bottom">...</div>
> </body>
> </html>
>
> Because I think I remember jQuery doesn't like to fumble around raw xml
> without a root element to wrap around it.
>
> Michel Belleville
>
> 2009/12/9 kingunderscore <brad.kings...@gmail.com>
>
>
>
> > ok i'm failing, even the piggies aren't helping.
>
> > ok this is the structure of what is coming back from my call.
>
> > <div id="top">
> > ...........
> > </div>
> > <div id="middle">
> > .........
> > </div>
> > <div id="bottom">
> > .........
> > </div>
>
> > so this is what i am doing...
> > success: function(htmlReturn){
> >        mainData = $j('#top', htmlReturn).html();
> >        topData  = $j('#middle', htmlReturn).html();
> >        leftData = $j('#bottom', htmlReturn).html();
>
> >        $j("#appliedFilters").html(topData);
> >        $j("#notAppliedFilters").html(leftData);
> >        $j("#searchResults").html(mainData);
> > }
>
> > What am i doing wrong?  The selectors i am using to populate the
> > variables keep returning nothing, i have to have the syntax wrong.
>
> > Any help is appreciated^2
>
> > On Dec 9, 1:01 pm, Michel Belleville <michel.bellevi...@gmail.com>
> > wrote:
> > > Well obvisouly you've got it all now.
>
> > > Always a pleasure ^^
>
> > > Michel Belleville
>
> > > 2009/12/9 kingunderscore <brad.kings...@gmail.com>
>
> > > > Hmm ok.
>
> > > > So i what i am getting from this is that i can refer to elements
> > > > inside of the response object.
>
> > > > $('#cold room').html($('house.of_bricks', piggies).html());
>
> > > > So in my case if i call my file and build 3 different divs inside of
> > > > the html output I can then take the innerHTML from each of the
> > > > response divs and populate the divs that i have on the page.
>
> > > > I think i got it.  I will let you know if it works out.
>
> > > >  thanks a lot for your piggy example :)
>
> > > > On Dec 9, 12:38 pm, Michel Belleville <michel.bellevi...@gmail.com>
> > > > wrote:
> > > > > Well, if you want to load 3 different bits of data to put in 3
> > different
> > > > > places all at once, first you've got to get your server to return the
> > 3
> > > > > little bits of datas in only one query and wrap them in containers so
> > you
> > > > > recognize them. So let's assume your unique query returns its results
> > > > this
> > > > > way :
>
> > > > > <houses>
> > > > > <house id="of straw"> a little piggy </house>
> > > > > <house id="of_wood"> another little piggy </house>
> > > > >  <house id="of_bricks"> this clever little bastard piggy </house>
> > > > > </houses>
>
> > > > > Now let's bring them where they belong.
>
> > > > > $.ajax({
> > > > > url: '/come_to_me_little_piggies.asp',
> > > > > data: { or_i_will: 'huff', and: 'puff' },
> > > > > cache: false,
> > > > > success: function(piggies) {
> > > > > // I'm real hungry, so the first one will end up in my stomach
> > > > > $('#my_stomach').html($('house.of_straw', piggies).html());
>
> > > > > // now I'm not so hungry so the second little piggy I'll keep for
> > > > tomorrow
> > > > > $('#leftovers').html($('house.of_wood', piggies).html());
>
> > > > > // seems like this house of bricks was no match for mr wolf after
> > all,
> > > > let's
> > > > > put little smartass in the cold room
> > > > > $('#cold room').html($('house.of_bricks', piggies).html());
>
> > > > > }
> > > > > });
>
> > > > > But the important thing is if you don't want to do 3 queries, you've
> > got
> > > > to
> > > > > return all data in just one query.
>
> > > > > Michel Belleville
>
> > > > > 2009/12/9 kingunderscore <brad.kings...@gmail.com>
>
> > > > > > First of all i am working in ASP.  And i have 3 elements i am
> > trying
> > > > > > to populate.  I can do that no problem, but my issue is I am
> > basically
> > > > > > making the same Ajax request 3 times and there is SQL involved that
> > i
> > > > > > would rather only make once.
>
> > > > > > I have pseudo code below to represent what i am doing.  If i could
> > > > > > just make one call and pull topData, LeftData, and gridData that
> > would
> > > > > > cut the processing down significantly.
>
> > > > > > $j.ajax({
> > > > > >          url: '/ajaxHandler.asp',
> > > > > >          data:  {handleSection:["top"],searchTerm:[''+searchTerm]},
> > > > > >          cache: false,
> > > > > >          complete: function(){
> > > > > >                  $j.ajax({
> > > > > >                  url: '/ajaxHandler.asp',
> > > > > >                  data:
> > > > > >  {handleSection:["left"],searchTerm:[''+searchTerm]},
> > > > > >                  cache: false,
> > > > > >                  beforeSend: function(){
> > > > > >                  },
> > > > > >                  complete: function(){
> > > > > >                  },
> > > > > >                  success: function(html){
> > > > > >                          leftData = html;
>
> > > > > >                          $j.ajax({
> > > > > >                                  url: '/ajaxHandler.asp',
> > > > > >                                  data:
> > > > > >  {handleSection:["grid"],searchTerm:[''+searchTerm]},
> > > > > >                                  cache: false,
> > > > > >                                  beforeSend: function(){},
> > > > > >                                  complete: function(){
> > > > > >                                  },
> > > > > >                                  success: function(html){
> > > > > >                                        gridData = html;
>
> > > > > >                                       // populate sections
> > > > > >                                         $j("#top").html(topData);
> > > > > >                                         $j("#left").html(leftData);
> > > > > >                                         $j("#grid").html(gridData);
> > > > > >                                  }
> > > > > >                                });
> > > > > >                  }
> > > > > >                });
> > > > > >          },
> > > > > >          success: function(html){
> > > > > >                topData = html;
> > > > > >          }
> > > > > >        });

Reply via email to