Why does this work:
$(\'.button_30\').click(function(){ $(this).closest(\'.portlet\').find(\'.portlet_content\').text(\"foo\"); });
an
parent() only looks one level up, you can try parents() to search all way up
parent()
parents()
$('.button_30').click(function(){ $(this).parents('.portlet').find('.portlet_content').text("foo"); });
you can see the documentation