I want to: FIND 'link' in 'a' and STRIP ALL parent tags except/until 'table'. I know its not the ideal way to do it, but sometimes you just can't modify the markup so it'd be great to know a jquery hack for this.
var a = $("a:contains('link')"); var table = a.closest('table'); a.insertBefore( table ); // Edit: See comments below table.contents().remove(); table.append( a );
remove() will also remove any event handlers that might be attached to the anchor element. To get around that, move the anchor outside of the table before removing its contents.