Saltar al contenido

Drupal: cuál es el evento que se desencadena después de que se ejecuta un autocompletado y cómo recuperar el valor seleccionado

Solución:

No se activa ningún evento en este momento (a partir de 7.34), pero hay un parche sobre este problema que debería permitirle usar algo como:

$('#input-id').on('autocompleteSelect', function(event, node) {

});

o si está usando una versión anterior de jQuery

$('#input-id').bind('autocompleteSelect', function(event, node) {

});

Dónde node es el elemento seleccionado. Debería poder obtener el tid de una de las propiedades de ese objeto.

Drupal 7 y 8 proporcionan la generación de eventos de autocompletado de jQuery sin ningún código personalizado en este momento.

En Drupal 7, el autocompleteSelect El evento se agregó en el número de Drupal # 365241. (Clive mencionó que esto estaba en progreso cuando publicó su respuesta).

Drupal 8 usa el widget de autocompletado de jQuery UI. los autocompleteclose event es el evento jQuery UI más similar al D7 autocompleteSelect evento. En D8 la interfaz de usuario de jQuery autocompleteselect El evento también se activará, pero una devolución de llamada Ajax no recibirá los valores de estado de formulario actualizados. autocompleteclose las devoluciones de llamada se proporcionan con valores de estado de formulario actualizados, que generalmente es lo que desea.

Como han indicado las otras respuestas, puede hacer uso de los datos de eventos en el navegador del cliente utilizando un controlador de eventos de jQuery o Drupal.behaviors (Drupal 7, Drupal 8). En Drupal 7 usarías el autocompleteSelect evento, y en Drupal 8 autocompleteclose.

Si necesita el valor en su código PHP, se puede usar una devolución de llamada Ajax. Aquí hay algunas instrucciones sobre cómo hacer esto en Drupal 7 o en Drupal 8.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *