El caso es que me funciona correctamente, pero he detectado que las palabras que escribo en la caja de texto tienen que estar acentuadas si quiero que se presenten los posibles resultados, y me gustaría que esto no fuera necesario. Es decir, si empiezo a teclear por ejemplo "nume" me gustaría que me presentara la opción "número", y no lo hace...me gustaría que fuera "case insensitive" a los acentos
Navegando he visto códigos de este estilo:
Código PHP:
<script type="text/javascript">
$(function() {
function split( val ) {
return val.split( /,s*/ );
}
function extractLast( term ) {
return split( term ).pop();
}
var accentMap = {
"á": "a",
"ö": "o",
"ñ": "n",
"é": "e",
"í": "i",
"ó": "o",
"ú": "u",
};
var normalize = function( term ) {
var ret = "";
for ( var i = 0; i < term.length; i++ ) {
ret += accentMap[ term.charAt(i) ] || term.charAt(i);
}
return ret;
}
$( "#search" ).autocomplete({
source: function( request, response ) {
var matcher = new RegExp( $.ui.autocomplete.escapeRegex( request.term ), "i" );
response( $.grep( $.getJSON( "ajax_palabra.php", {
term: extractLast( request.term )
}, response), function( value ) {
value = value.label || value.value || value;
return matcher.test( value ) || matcher.test( normalize( value ) );
}) );
},
search: function() {
// custom minLength
var term = extractLast( this.value );
if ( term.length < 2 ) {
return false;
}
},
focus: function() {
// prevent value inserted on focus
return false;
}
});
});
</script>
http://www.forosdelweb.com/f179/autocomplete-jquery-acentos-851833/
A ver si alguien ha tenido este problema y me puede dar unas indicaciones.