função javascript para ordenar campos de uma combo?

Ola,

Estou utilizando Ajax, E na hora de preencher um combo ele esta preenchendo desordenado. Alguem teria uma função para ordenar o combo em ordem alfabetica ???

Cara, sao essas duas funcoes… so que elas estavam sendo concatenadas em um stringbuffer, se vc puder dar uma limpada ai no codigo…

buffer.append("function _sortSelect(obj) {\n");
    	buffer.append("	var o = new Array();\n");
    	buffer.append("	if (!_hasOptions(obj)) { return; }\n");
    	buffer.append("	for (i=0; i<obj.options.length; i++) {\n");
    	buffer.append("		o[o.length] = new Option( obj.options[i].text, obj.options[i].value, obj.options[i].defaultSelected, obj.options[i].selected) ;\n");
    	buffer.append("	}\n");
    	buffer.append("	if (o.length==0) { return; }\n");
    	buffer.append("	o = o.sort(\n"); 
    	buffer.append("		function(a,b) {\n"); 
    	buffer.append("			if ((a.text+\"\") < (b.text+\"\")) { return -1; }\n");
    	buffer.append("			if ((a.text+\"\") > (b.text+\"\")) { return 1; }\n");
    	buffer.append("			return 0;\n");
    	buffer.append("		}\n"); 
    	buffer.append("	);\n");
    	buffer.append(" \n");
    	buffer.append("	for (var i=0; i<o.length; i++) {\n");
    	buffer.append("		obj.options[i] = new Option(o[i].text, o[i].value, o[i].defaultSelected, o[i].selected);\n");
    	buffer.append("	}\n");
    	buffer.append("}\n");
    	buffer.append(" \n");
    	buffer.append("function _hasOptions(obj) {\n");
    	buffer.append("	if (obj!=null && obj.options!=null) { return true; }\n");
    	buffer.append("	return false;\n");
    	buffer.append("}\n");
    	buffer.append(" \n");
    	buffer.append("function _generateDiv(prefix){\n");
    	buffer.append("	var object = document.getElementById(\"_div_\" + prefix);\n");
    	buffer.append("	var dest = document.getElementById(\"_de_\" + prefix);\n");
    	buffer.append("	var output = new String();\n");
    	buffer.append("	for(i=0;i<dest.options.length;i++){\n");
    	buffer.append("		output = output + \"<input type=\\\"hidden\\\" name=\\\"\" + prefix + \"\\\" value=\\\"\" + dest.options[i].value + \"\\\">\";\n");
    	buffer.append("	}\n");
    	buffer.append("if(dest.options.length==0){\n");
		buffer.append("output = output + \"<input type=\\\"hidden\\\" name=\\\"\" + prefix + \"\\\" value=\\\"\\\">\";\n");
		buffer.append("}\n");
    	buffer.append("	object.innerHTML = output;\n");
    	buffer.append("}\n");