	$.fn.combobox = function(options) {

		var defaults = {
			dropDownHeight : 120,
			itemLimit : 10		
		}
		
		var options = $.extend(defaults, options);
		
		
		return this.each(function(){ 
			
			var arr = new Array();
			var obj = $(this);
		
			var count = 0;
			$(obj).find("option").each(function(){
			
				arr[$(this).val()] = $(this).text();
				count++;
			})
			 
			/* hide selected form */
			$(obj).hide();
					
			var list = '<div id="list"><ul>';
	
			var dropdownWidth = $(obj).find("select").width();
			
			var firstItem = '';
			for (index in arr ) {
				if (firstItem=='') {
					firstItem = arr[index];	
				}			
				list = list + "<li title='"+index+"'>"+arr[index]+"</li>";
			}
	
			list = list + "</ul></div>";
	
			$(obj).after('<div id="'+$(obj).attr("id")+'-form" class="formCombo"><div id="comboContainer"><div id="content">'+ firstItem +'</div><div id="button">&#9660;</div></div>'+list+'</div>');
					
			//$(obj).find('#list').hide();	
			//$(obj).find("#list").hide();
			
			var objId = "#"+$(obj).attr("id")+"-form";
		
			$(objId).find("#list").hide();
				
			$(objId).find("#button").click(function(){
				
				if ($(this).hasClass("open")){
					$(this).parent().next().hide();	
					$(this).removeClass("open");
				} else {			
					$(this).parent().next().show();	
					$(this).addClass("open");
				}
				
			}
			);
			
			if ($(objId).find("#list ul li").length > defaults.itemLimit) {
				$(objId).find("#list").css({"height": defaults.dropDownHeight+"px", overflow: "auto"});		
			}
		
			$(objId).find("#list ul li").click(function(){
				var itemVal = $(this).text();
				$(objId).find("#content").text(itemVal);
				$(this).parent().parent().hide();
 				
				console.log($(this).attr("title"));
				
				$(obj).val($(this).attr("title"));
				
				$(objId).find("#button").removeClass("open");
			});
			
			
			});
	
	}
