Comunidad de diseño web y desarrollo en internet online

Ordenar acentos

Citar            
MensajeEscrito el 10 Abr 2006 04:09 pm
Alguien sabe cómo? o tiene un tip para poder ordenar datos en un datagrid Y que me respete los acentos..

Ya que ahorita me ordena así
Azucena
Andrea
Florencia
Jimena
Yahara
Ángel

Siendo que Ángel debería ir en las Aass..
gracias.. :wink:

Por yeseniasl

11 de clabLevel



Genero:Femenino  

msie
Citar            
MensajeEscrito el 12 May 2006 05:23 am
Utas yo tampoco cacho, y lo de hacer reemplazo de letras (ais como encodar en utf8) por ahi, no me tinca. Tiene que haber una opcion mas simple.

Por colaborame

50 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 12 May 2006 05:40 pm
Flash no tiene ordenación accentSensitive ............
Sería buena idea crear una extensión de la clase string para el caso.

Por Teseo

SWAT Team

1780 de clabLevel

14 tutoriales

Genero:Masculino   SWAT

firefox
Citar            
MensajeEscrito el 12 May 2006 06:08 pm

Teseo escribió:

Flash no tiene ordenación accentSensitive ............
Sería buena idea crear una extensión de la clase string para el caso.

¿Extensión de String o de Array? :?

Por Zah

BOFH

4290 de clabLevel

27 tutoriales
5 articulos

  Bastard Operators From Hell Editores

Zaragoza, España

firefox
Citar            
MensajeEscrito el 12 May 2006 06:32 pm

zah escribió:



¿Extensión de String o de Array? :?

Pues pienso que de String.
Si quiero ordenar datos primero modifico las cadenas con toUpperCase por ejemplo (pues de otro modo el orden no sería alfabético en palabras con minus y mayus) y luego trato eso en un array para el sort que me convenga. Este es un caso igual. Sería toAccentInsensitive. :)

Por Teseo

SWAT Team

1780 de clabLevel

14 tutoriales

Genero:Masculino   SWAT

firefox
Citar            
MensajeEscrito el 12 May 2006 08:26 pm
Jeje, buscando un poco veo que tienes razón ^^. Bueno ya que estaba he hecho la función:

Código :

ar = new Array("Ícaro", "águila", "Esperanto", "tanteo", "Tántalo");
String.prototype.toAccentInsensitive = function():String  {
   ns = this.toLowerCase();
   lng = this.length;
   for (i=0; i<lng; i++) {
      char = ns.charAt(i);
      if (char == "á" || char == "ä" || char == "à") {
         ns = ns.substr(0, i)+"a"+ns.substr(i+1, lng-i-1);
      } else if (char == "é" || char == "ë" || char == "è") {
         ns = ns.substr(0, i)+"e"+ns.substr(i+1, lng-i-1);
      } else if (char == "í" || char == "ï" || char == "ì") {
         ns = ns.substr(0, i)+"i"+ns.substr(i+1, lng-i-1);
      } else if (char == "ó" || char == "ö" || char == "ò") {
         ns = ns.substr(0, i)+"o"+ns.substr(i+1, lng-i-1);
      } else if (char == "ú" || char == "ü" || char == "ù") {
         ns = ns.substr(0, i)+"u"+ns.substr(i+1, lng-i-1);
      }
   }
   return ns;
};
function accentFunc(st1, st2) {
   return st1.toAccentInsensitive()>st2.toAccentInsensitive();
}
trace(ar.sort(accentFunc));

Por Zah

BOFH

4290 de clabLevel

27 tutoriales
5 articulos

  Bastard Operators From Hell Editores

Zaragoza, España

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.