Je ne sais pas si vous utilisez un plug-in spécifique ou si vous avez la possibilité de modifier facilement le code source de saisie semi-automatique, mais je voudrais essayer de faire quelque chose comme ceci:
- Trouver la fonction qui est utilisée pour déclencher l'affichage de la saisie semi-automatique
- Définir une valeur booléenne lorsque se déclenche la visibilité de la saisie semi-automatique (true pour visible, false pour non)
- Vérifiez l'état de la valeur booléenne à chaque fois que vous essayez de catch enter (ou tab)
Notez que vous devez rendre la valeur booléenne accessible au public dans le contexte de l'objet de saisie semi-automatique.
Encore une fois, sans connaître les détails si votre mise en œuvre, il est difficile de dire la meilleure façon de le changer, mais il pourrait travail quelque chose comme ceci:
var Autocomplete = {
bIsVisible: false,
display: function() {
// toggle visibility of the autocomplete
this.bIsVisible = !this.bIsVisible;
}
}
Vous ne pourrait alors l'utiliser en faisant quelque chose comme ça :
alert(Autocomplete.bIsVisible); // returns false
Autocomplete.display(); // triggers the display of the autocomplete
alert(Autocomplete.bIsVisible); // returns true
Je viens d'essayer ceci sur firefox, et j'ai découvert que l'auto-complétion n'est même pas détectable par firebug, c'est-à-dire que vous ne pouvez pas l'inspecter. Je suppose que cette diminution des chances de détecter à partir de JavaScript –
dans tous les cas, jetez un oeil à celui-ci http://stackoverflow.com/questions/1567610/browser-textbox-autocomplete-event-when-does-this-happen –