Estamos utilizando el complemento de jquery de autocompletar escrito por Jörn Zaefferer, y estamos tratando de verificar que se ingrese una opción válida.JQuery Autocompletar verificar el valor seleccionado
El complemento tiene el evento result() que se dispara cuando se realiza una selección. Esto está bien, pero necesito verificar el valor en el cuadro de texto cuando un usuario hace clic también. Así que hemos probado los eventos .change() y .blur(), pero ambos plantean un problema: cuando haces clic en una entrada en el resultado div (la lista 'suggest') el .change() y .blur() los eventos se disparan, y esto es antes de que el complemento haya escrito un valor para el cuadro de texto, por lo que no hay nada que verificar en este momento.
Podría alguien ayudarme a configurar los eventos para que cada vez que alguien hace clic, pero no en el cuadro de resultados, pueda verificar un valor válido en el cuadro. Si este es el enfoque equivocado, infórmeme cuál es el correcto. Originalmente fuimos con este complemento debido a su opción 'mustMatch'. Esta opción no parece funcionar en todos los casos. Muchas veces se escribirá una entrada válida en el cuadro de texto y, una vez borrado por el complemento como no válido, no he podido determinar por qué.
Ejemplo de código básica:
<html>
<head>
<title>Choose Favorite</title>
<script language="JavaScript" src="jquery-1.3.2.min.js" ></script>
<script language="JavaScript" src="jquery.autocomplete.min.js" ></script>
<script>
$(".suggest").autocomplete("fetchNames.asp", {
matchContains:false,
minChars:1,
autoFill:false,
mustMatch:false,
cacheLength:20,
max:20
});
$(".suggest").result(function(event, data, formatted) {
var u = this;
// Check value here
});
/* OR */
$(".suggest").change(function(me) {
//check value here
});
</script>
</head>
<body>
<label for="tbxName">Select name (I show 10):</label><br />
<INPUT type="text" id="tbxName" name="tbxName" class="suggest"><br />
</body>
</html>
He encontrado la mejor respuesta aquí por Victor http://stackoverflow.com/questions/4952094/jquery-ui-autocomplete-only-allow-selected-valued-from-suggested-list –
Es decir una solución decente Tendré que intentarlo la próxima vez que necesite esta funcionalidad. – Brettski
ver que: http://stackoverflow.com/questions/1267149/how-to-detect-when-user-ignores-jquery-autocomplete-suggestions –