2010-09-23 3 views
3

J'essaie d'effectuer une sorte de validation du champ de texte avant que les résultats de la requête de saisie semi-automatique ne soient appliqués au texte entré. Mon code:Validation de saisie semi-automatique dans l'interface utilisateur jQuery

<script type="text/javascript" src="/scripts/jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="/scripts/jquery-ui-1.8.2.min.js"></script> 
<script type="text/javascript"> 
    $(function() { 
    $("#vnu").autocomplete({ 
     source: "url", 
     minLength: 1, 
     delay:200, 
     focus: function (event, ui) { 
     $(event.target).val(ui.item.label); 
     return false; 
     } 
    }); 
    }); 
</script> 

<body> 
<input type="text" name="vnu" id="vnu" /> 
</body> 

Donc, fondamentalement, quand quelqu'un entre dans le champ texte, je veux vérifier un format valide avant le lettrage demande Autocomplete une recherche de résultats. J'ai déjà une fonction écrite qui retourne vrai tout faux, je ne suis pas sûr d'où l'appeler.

Répondre

5

J'ai finalement trouvé une solution de travail pour tous ceux qui sont intéressés, vous pouvez utiliser l'événement de recherche pour exécuter des actions de pré-demande/validation. Voir l'ajout de recherche dans le code ci-dessous:

$(function() { 
    $("#vnu").autocomplete({ 
    source: "url", 
    minLength: 1, 
    delay:200, 
    focus: function (event, ui) { 
     $(event.target).val(ui.item.label); 
     return false; 
    }, 
    search: function (event, ui) { 
     return some_validation($(this).val()); 
    } 
    }); 
}); 

Autocomplete référence événement de recherche: http://docs.jquery.com/UI/Autocomplete#event-search

Questions connexes