Dear kirstenw
Try use condtional to check field in content template "Product list item".
[wpv-if onsale="views_woo_on_sale" evaluate="$onsale = '1'"]<div class="onsale">On sale!</div>[/wpv-if]
More:
http://wp-types.com/documentation/user-guides/conditional-html-output-in-views/#checking-other-attributes
Remeber, that "views_woo_on_sale" will be true if any of product variant is on sale.
Please let me know if you are satisfied with my answer and if I can help you with any other questions you might have.
Regards,
Marcin