Estoy usando ColdFusion 9 y la última y mejor jQuery.jQuery - ¿Necesito que la URL codifique una variable?
En la parte superior de mi página, yo uso esto:
<cfajaxproxy cfc="artists" jsclassname="jsApp">
Tengo un campo de búsqueda:
<input id="Artist" class="Search" type="text">
Cuando un usuario escribe en el campo de búsqueda, el valor se pasa a una función de jQuery:
$(".Search").keyup(function() {
var Artist = $("#Artist").val();
var QString = "Artist=" + Artist;
$("#ArtistSearchResultsDiv").load("ArtistSearchResults.cfm?"+QString);
});
los resultados de búsqueda div carga una página con estos artículos en CFScript:
objArtists = createObject("component", "artists");
GetArtists = objArtists.getArtists(Artist);
Tengo un CFC que ejecuta la consulta y devuelve los registros correctos.
El PROBLEMA es que cuando escribo en el cuadro de búsqueda, tan pronto como toco un espacio, no se agrega más valor a la variable QString, por lo que esos valores no se pasan a la consulta.
Así es como mucho cadena de búsqueda se ve en Firebug en la búsqueda de "The Beatles":
GET http://127.0.0.1:8500/WebSites/AwesomeAlbums/GlobalAdmin/ArtistSearchResults.cfm?Artist=The
Es detiene tan pronto como se ve un espacio.
lo tanto, si usted estaba buscando "The Beatles", sólo el valor "El" se pasó a la variable QString. Si estuvieras buscando "Celine Dion", solo se aprobará "Celine".
Supongo que necesito que la URL codifique el QString de alguna manera. ¿Es eso correcto? ¿Cómo puedo hacer eso?
Sí. Desconfíe de la entrada del usuario. –
Sí, desconfiaría de cualquiera que busque "Celine Dion". De hecho, debería bloquear una dirección IP tan pronto como lleguen a "Celi". –