(function($){
$.fn.selectCombo = function(url, target, settings){//, options

var defaults = {hidetarget: true};
$.extend(defaults, settings);
return this.each(function(){
var targetlabel = target.replace(/#/, '');
targetlabel = "label[@for='" + targetlabel + "']";

if($(this).val() == '' && defaults.hidetarget){
	$(targetlabel).hide();
	$(target).hide();
	var targetOption = $("option:first", target);
}

$(this).change(function(){
	$.getJSON(url,{q: $(this).val()}, function(j){
		var options = '';
		for (var i = 0; i < j.length; i++) {
			options += '<option value="' + j[i].oV + '">' + j[i].oT + '</option>';
		}
		$(target).html(options);
		$("option:first", target).attr("selected","selected");
		$(targetlabel).show();
		$(target).show();
	});
});
});
}
})(jQuery);