this line:
var widgetid = jQuery(".star-dropdown").parent().children(".star-widget-id").val();
should be:
var widgetid = jQuery(this).parent().children(".star-widget-id").val();
In your original code,in the event handler, you're finding all of the selects with a class of 'blah'. Simply put, it means you're working with the first select on the page(no matter what select has changed) You don't want all of the selects with a class of blah, just the one that has the change event fired.
jQuery(this) inside an event handler will refer to the element that was 'clicked', 'changed' etc. This means that when the function traverses the DOM to find the parent etc, it will start from the relevant select, not from the first one on the page.