Comunidad de diseño web y desarrollo en internet online

Reemplazar tildes y ñ con jquery

Citar            
MensajeEscrito el 13 Nov 2012 08:25 pm
buen dia muchachos como estan? no soy muy diestra en estoy de javascript o jquery pero quiero hacer lo siguiente tengo en mi formulario 2 campos de textos 1 llamado titulo y el otro url, mi pregunta es de que manera puedo hacer con javascript una funcion que se ejecute mientras ingreso texto en el campo titulo para que en el campo url vaya apareciendo lo que escribo en minuscula y con las vocales acentuadas reemplazadas por vocales simples y la ñ por n??

vagando por la web consegui esta funcion

Código Javascript :

function limpiar(text){
      var text = text.toLowerCase(); // a minusculas
      text = text.replace(/[áàäâå]/, 'a');
      text = text.replace(/[éèëê]/, 'e');
      text = text.replace(/[íìïî]/, 'i');
      text = text.replace(/[óòöô]/, 'o');
      text = text.replace(/[úùüû]/, 'u');
      text = text.replace(/[ýÿ]/, 'y');
      text = text.replace(/[ñ]/, 'n');
      text = text.replace(/[ç]/, 'c');
      text = text.replace(/['"]/, '');
      text = text.replace(/[^a-zA-Z0-9-]/, ''); 
      text = text.replace(/\s+/, '-');
      text = text.replace(/' '/, '-');
      text = text.replace(/(_)$/, '');
      text = text.replace(/^(_)/, '');
      return text;
   }


y la ejecuto en mi documento de esta forma

Código Javascript :

$('#titulo').keyup(function (){
   var al = $('#titulo').val();
   $('#url').attr('value',limpiar(al));
})


mientras escribo en titulo el me va mostrando todo chevere en url excepto que en lugar de reemplazar los espacios por guiones(-) me une las palabras, las vocales acentuadas las elimina y lo mismo hace con las eñes (ñ) ... por fa pueden ayudarme?? :cry:

Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

firefox
Citar            
MensajeEscrito el 19 Nov 2012 08:30 pm
aunque no tuve respuesta alguna ps de todos modos gracias lo resolvi asi

Código Javascript :

$('#titulo').keyup(function (){
   var normalize = (function() {
     var from = "ÃÀÁÄÂÈÉËÊÌÍÏÎÒÓÖÔÙÚÜÛãàáäâèéëêìíïîòóöôùúüûÑñÇç",
      to   = "AAAAAEEEEIIIIOOOOUUUUaaaaaeeeeiiiioooouuuunncc",
      mapping = {};
 
  for(var i = 0, j = from.length; i < j; i++ )
      mapping[ from.charAt( i ) ] = to.charAt( i );
 
  return function( str ) {
      var ret = [];
      for( var i = 0, j = str.length; i < j; i++ ) {
          var c = str.charAt( i );
          if( mapping.hasOwnProperty( str.charAt( i ) ) )
              ret.push( mapping[ c ] );
          else
              ret.push( c );
      }
      return ret.join( '' ).replace( /[^-A-Za-z0-9]+/g, '-' ).toLowerCase();
  }
 
})();
      var al = $('#titulo').val();
      var clean = normalize(al);            
      $('#url').attr('value',clean);
   });

Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

firefox

 

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