If the html is in a string, e.g. 's':

$(s).html() would return everything inside the outer div.

If it includes more than just that error, you can do something like:

$(s).find('div.error').html()

On Mon, Jan 11, 2010 at 6:42 AM, youradds <andy.ne...@gmail.com> wrote:

> Hi,
>
> Thanks for the reply. However, your code only seems to be any good
> with the actual page content you are on, not the values of a string?
> Remember, this data is coming through as a string (as a response from
> a jQuery .post() function, so the returned HTML then holds errors
> which may have occured - and I need to pick up on those :))
>
> TIA
>
> Andy
>
>
>
> On Jan 9, 11:09 pm, Leonardo Balter <leonardo.bal...@gmail.com> wrote:
> > 2010/1/9 youradds <andy.ne...@gmail.com>
> >
> >
> >
> > > Hi,
> >
> > > Thanks. Ok, I have this string (for example):
> >
> > > <html>
> > > <head></head>
> > > <body>
> >
> > > bit of other junk here, and maybe other divs and stuff
> >
> > >                        <div class="error">
> > >                                <ul>
> > >                                        <li>Gast Email der Rezension
> > > kann nicht den Wert 'undefined'
> > >                                        speichern.</li>
> > >                                </ul>
> > >                        </div>
> >
> > > some junk here
> >
> > > </body>
> > > </html>
> >
> > > So how exactly would I extract that from a string?
> >
> > > TIA :)
> >
> > > Andy
> >
> > > On Jan 9, 1:32 pm, Leonardo Balter <leonardo.bal...@gmail.com> wrote:
> > > > And you can simply use .text() method. This will return you only the
> text
> > > > inside your selected element.
> >
> > > > Do you also need tips on getting the child elements on that div?
> >
> > > > --
> > > > At,
> > > > Leo Balterhttp://leobalter.net
> > > > Blog técnico:http://blog.leobalter.net
> >
> > Based on jquery documentation:
> >
> > First, you can define your selectors, it's the easier way if you already
> > work with CSSs:
> >
> > http://docs.jquery.com/Selectors
> >
> > You can use something like: $('.error > ul > li').text(); to match all
> li's
> > inside the element with class set to 'error' (the . referees a element
> using
> > class name right after the dot).
> >
> > You can also use $('.error ul li').text() to get "each" li descending
> from a
> > ul than from a element with a class named 'error'. In our .text() method
> > this won't make much diference than using the first selector.
> >
> > Now let's try some jquery methods without complicating our basic
> selector:
> >
> > We have the .find() and .children() methods
> >
> > From now I'm adapting the text from jquery documentation to our example:
> >
> > "In most cases two selections made with and without find() are
> equivalent,
> > such as $('.error').find('li') and $('.error ul li'). However, using a
> > selector filter may lead to unexpected results:
> > $('.error').find('li:first').length may be > 1, (whereas $('.error
> > li:first').length will never be > 1) as there is an implicit each() done
> > within find()."
> >
> > In other words: you can try to select the first li of all div with the
> class
> > attribute named 'error'.
> >
> > Now the .children(), this method will return all the immediate
> descendants
> > elements within the selected element.
> >
> > Example: $('.error').children('ul').children('li') this will return
> exactly
> > the directly children of the .error! .find() would return all
> descendants,
> > not only the immediate ones.
> >
> > As said in the jquery documentation, it's important to refrain here:
> while
> > .children() returns only the immediate descendants, .parents() will look
> at
> > all ancestors.
> >
> > That's all,
> >
> > Have a good day.
> >
> > --
> > At,
> > Leo Balterhttp://leobalter.net
> > Blog técnico:http://blog.leobalter.net
>



-- 
John Arrowwood
John (at) Irie (dash) Inc (dot) com
John (at) Arrowwood Photography (dot) com
John (at) Hanlons Razor (dot) com
--
http://www.irie-inc.com/
http://arrowwood.blogspot.com/

Reply via email to