Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] Lograr autocomplete y submit con un solo enter

Estas en el tema de Lograr autocomplete y submit con un solo enter en el foro de Jquery en Foros del Web. Buenas: Necesitaba ayuda con cierto tema, gracias de antemano: Creo que explicar mi problema es simple, pero no tengo ni idea de lo complicada que ...
  #1 (permalink)  
Antiguo 20/12/2013, 09:58
Avatar de anderdomingo  
Fecha de Ingreso: mayo-2013
Ubicación: Zarautz
Mensajes: 27
Antigüedad: 10 años, 11 meses
Puntos: 0
Pregunta Lograr autocomplete y submit con un solo enter

Buenas:

Necesitaba ayuda con cierto tema, gracias de antemano:

Creo que explicar mi problema es simple, pero no tengo ni idea de lo complicada que puede llegar a ser la solucion. Tengo un formulario que segun vas pulsando ciertas letras te va saliendo el autocompletar. Tengo puesto el parametro (creo que es un parametro jeje) de selectfirst y con ello te selecciona el primer campo del autocompletar solo con poner enter.

Pues bien el problema es que hay que pulsar dos veces enter para conseguir el submit, uno para seleccionar el primero y se autocomplete, y otro para que haga el submit.

Lo que me gustaria conseguir es que solo pulsando una vez enter seleccione el primer campo y haga el submit a la vez.

Se que este problema no parece demasiado molesto pero hay que repetir varias veces este proceso para darle la informacion necesaria al formulario y me harto hasta yo... asi que ni me imagino los usuarios... jejeje

El codigo del mismo html es este:
Código:
  <script type="text/javascript">
$().ready(function() {
	$("#testinput").autocomplete("get_course_list.php", {
		width: 220,
		matchContains: true,
		mustMatch: true,
		//minChars: 0,
		//multiple: true,
		//highlight: false,
		//multipleSeparator: ",",
		selectFirst: true
	});
});
Y las opciones (que no entiendo mucho) del autocompletar son estas:

Código:
$.Autocompleter.defaults = {
	inputClass: "ac_input",
	resultsClass: "ac_results",
	loadingClass: "ac_loading",
	minChars: 1,
	delay: 400,
	matchCase: false,
	matchSubset: true,
	matchContains: false,
	cacheLength: 10,
	max: 100,
	mustMatch: false,
	extraParams: {},
	selectFirst: true,
	formatItem: function(row) { return row[0]; },
	formatMatch: null,
	autoFill: false,
	width: 0,
	multiple: false,
	multipleSeparator: ", ",
	highlight: function(value, term) {
		return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi, "\\$1") + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>");
	},
    scroll: false,
    scrollHeight: 180
};
Se os ocurre alguna solucion?
  #2 (permalink)  
Antiguo 21/12/2013, 19:50
Avatar de anderdomingo  
Fecha de Ingreso: mayo-2013
Ubicación: Zarautz
Mensajes: 27
Antigüedad: 10 años, 11 meses
Puntos: 0
Respuesta: Lograr autocomplete y submit con un solo enter

ya lo he conseguido, para los que os interese:

Hace tiempo cambie el autocompletar viejo por uno nuevo con mas opciones y mejores resultados, mirando en jquery he encontrado el codigo que controla las teclas con las que se maneja el autocompletar (up,down,left,right,enter...).

En ese codigo en el caso de la tecla enter estaba este trozo de codigo que impedia que el formulario hiciera submit cuando se seleccionaba la opcion con enter. Simplemente lo he quitado y el problema se soluciono solo.

Código:
   event.preventDefault();
   blockSubmit = true;
   return false;
Gracias aun asi por los que han dedicado un rato para intentar encontrar la solucion!!

Etiquetas: enter, submit
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:08.