var foo = $("#foo");
foo.html('<br/><img /><br/>').find('img').attr("src","asdf.gif");

Tested and working.

find( 'img' ) works for me.

On Dec 16, 3:12 pm, ken <jqu...@kenman.net> wrote:
> Scratch my "working" example -- the .find( 'img' ) evidently can't find the
> image....
>
> On Tue, Dec 16, 2008 at 4:50 PM, ken <jqu...@kenman.net> wrote:
> > I am trying to do the following:
>
> > 1) create an IMG
> > 2) assign an SRC to the IMG
> > 3) wrap the IMG in <br/>'s
> > 4) insert the resultant HTML into #foo
>
> > I have been hammering at this for awhile now, and am having problems; I've
> > tried using wrap and some of the other content-manipulation methods, but I
> > still can't get the implementation down to something short and sweet
> > (referencing jQuery only once). This is the best I've got so far:
>
> >     var html = jQuery( '<br/><img/><br/>' )
> >         .find( 'img' ).attr( 'src', 'image.gif' ).end();
>
> >     jQuery( '#foo' ).html( html );
>
> > I realize that I could use the literal expression in place of the "html"
> > variable, but that's no better IMO.
>
> > What I originally started out doing, was something like this:
>
> >     jQuery( '<img/>' ).attr( 'src', 'image.gif' ).wrap( '<br/><br/>'
> > ).replaceAll( '#foo' );
>
> > But, replaceAll removes the node (I only want to change its contents).
>
> > What I've noticed, is that the jQuery API provides alternative forms of 3
> > methods (that I don't see used very often): append, prepend, and replace.
> > These 3 support both of the followng forms, and I believe they are 100%
> > interchangeable:
>
> >     jQuery( selector ).method( html );
> >     jQuery( html ).methodTo( selector );
>
> > However, .html(), which is arguably more popular, only has the 1st form,
> > but not the second. Is there an alternative form for html() that I'm
> > missing, or is this a hole in the API that apparently isn't wanted?
>
> > Thanks in advance!

Reply via email to