Dans mon application ASP.Net MVC, j'ai une saisie semi-automatique jQuery dans une zone de texte. J'ai tout ce qui fonctionne pour afficher les noms d'éléments actuellement utilisés et ce que je veux faire est de forcer l'utilisateur à entrer un nom d'article complètement nouveau. C'est à dire. la saisie semi-automatique sert de guide à ce qui existe mais l'utilisateur doit finalement entrer une valeur de chaîne complètement utilisée. Je souhaite que l'interface utilisateur signale si un élément actuellement utilisé est sélectionné (il y aura une autre vérification du côté serveur lorsque submit est envoyé). Pour l'instant, il y a juste une simple alerte().jQuery autocomplete pour obtenir la valeur inutilisée
Mon script est la suivante:
$(document).ready(function() {
$('#combobox').autocomplete('<%= Url.Action("ProjectIdList", "LookUp") %>', {
delay:10,
minChars:1,
matchCase: 0,
matchSubset: 1,
autoFill: true,
maxItemsToShow:10,
cacheLength: 10,
onItemSelect:selectItem,
onFindValue:selectItem
});
});
S'il vous plaît noter le balisage: onItemSelect: selectItem, onFindValue: selectItem
J'ai scénario plus comme suit:
function findValue(li) {
if (li != null) return alert("This Project Id cannot be used");
}
function selectItem(li) {
findValue(li);
}
Cependant, je ne peux pas obtenir ces événements au feu . Qu'est-ce que je rate?
Sinon, existe-t-il une meilleure façon de le faire?
Merci, je l'ai eu de travail en ajoutant le script followijng dans le bloc document.ready: $ ('# combobox ') .result (function (item) { if (item) { // aucune correspondance alert ("Not this one!"); } }); }); – Redeemed1